diff --git a/.github/ISSUE_TEMPLATE/01-feature_request.yaml b/.github/ISSUE_TEMPLATE/01-feature_request.yaml
index 82ba01c77..f07db712d 100644
--- a/.github/ISSUE_TEMPLATE/01-feature_request.yaml
+++ b/.github/ISSUE_TEMPLATE/01-feature_request.yaml
@@ -14,7 +14,7 @@ body:
attributes:
label: NetBox version
description: What version of NetBox are you currently running?
- placeholder: v4.1.1
+ placeholder: v4.1.3
validations:
required: true
- type: dropdown
@@ -24,6 +24,21 @@ body:
- Data model extension
- New functionality
- Change to existing functionality
+ - Other
+ validations:
+ required: true
+ - type: dropdown
+ attributes:
+ label: Triage priority
+ description: >
+ Issue triage may be prioritized in some cases. Select whichever of the following
+ conditions applies, if any.
+ options:
+ - I volunteer to perform this work (if approved)
+ - I'm a NetBox Labs customer
+ - This is a very minor change
+ - N/A
+ default: 3
validations:
required: true
- type: textarea
diff --git a/.github/ISSUE_TEMPLATE/02-bug_report.yaml b/.github/ISSUE_TEMPLATE/02-bug_report.yaml
index 2476bbcfc..892981402 100644
--- a/.github/ISSUE_TEMPLATE/02-bug_report.yaml
+++ b/.github/ISSUE_TEMPLATE/02-bug_report.yaml
@@ -22,11 +22,25 @@ body:
- Self-hosted
validations:
required: true
+ - type: dropdown
+ attributes:
+ label: Triage priority
+ description: >
+ Issue triage may be prioritized in some cases. Select whichever of the following
+ conditions applies, if any.
+ options:
+ - I volunteer to perform this work (if approved)
+ - I'm a NetBox Labs customer
+ - This is preventing me from using NetBox
+ - N/A
+ default: 3
+ validations:
+ required: true
- type: input
attributes:
label: NetBox Version
description: What version of NetBox are you currently running?
- placeholder: v4.1.1
+ placeholder: v4.1.3
validations:
required: true
- type: dropdown
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index b4be03742..c3b4876c3 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -73,7 +73,7 @@ jobs:
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- pip install pycodestyle coverage tblib
+ pip install ruff coverage tblib
- name: Build documentation
run: mkdocs build
@@ -85,7 +85,7 @@ jobs:
run: python netbox/manage.py makemigrations --check
- name: Check PEP8 compliance
- run: pycodestyle --ignore=W504,E501 --exclude=node_modules netbox/
+ run: ruff check netbox/
- name: Check UI ESLint, TypeScript, and Prettier Compliance
run: yarn --cwd netbox/project-static validate
diff --git a/README.md b/README.md
index 34975980b..0c793b8a4 100644
--- a/README.md
+++ b/README.md
@@ -7,7 +7,11 @@
-
+
+ NetBox Community |
+ NetBox Cloud |
+ NetBox Enterprise
+
NetBox exists to empower network engineers. Since its release in 2016, it has become the go-to solution for modeling and documenting network infrastructure for thousands of organizations worldwide. As a successor to legacy IPAM and DCIM applications, NetBox provides a cohesive, extensive, and accessible data model for all things networked. By providing a single robust user interface and programmable APIs for everything from cable maps to device configurations, NetBox serves as the central source of truth for the modern network.
@@ -81,11 +85,6 @@ NetBox automatically logs the creation, modification, and deletion of all manage
* The [official documentation](https://docs.netbox.dev) offers a comprehensive introduction.
* Check out [our wiki](https://github.com/netbox-community/netbox/wiki/Community-Contributions) for even more projects to get the most out of NetBox!
-
- 
- Looking for a managed solution? Check out NetBox Cloud or NetBox Enterprise!
-
-
## Get Involved
* Follow [@NetBoxOfficial](https://twitter.com/NetBoxOfficial) on Twitter!
diff --git a/contrib/generated_schema.json b/contrib/generated_schema.json
index 835a6d829..1152d6974 100644
--- a/contrib/generated_schema.json
+++ b/contrib/generated_schema.json
@@ -290,6 +290,7 @@
"molex-micro-fit-2x2",
"molex-micro-fit-2x4",
"dc-terminal",
+ "eaton-c39",
"hdot-cx",
"saf-d-grid",
"neutrik-powercon-20a",
@@ -330,6 +331,7 @@
"5gbase-t",
"10gbase-t",
"10gbase-cx4",
+ "100base-x-sfp",
"1000base-x-gbic",
"1000base-x-sfp",
"10gbase-x-sfpp",
@@ -381,6 +383,7 @@
"ieee802.11ay",
"ieee802.11be",
"ieee802.15.1",
+ "ieee802.15.4",
"other-wireless",
"gsm",
"cdma",
diff --git a/docs/administration/authentication/microsoft-azure-ad.md b/docs/administration/authentication/microsoft-entra-id.md
similarity index 94%
rename from docs/administration/authentication/microsoft-azure-ad.md
rename to docs/administration/authentication/microsoft-entra-id.md
index 17b130818..3451c656f 100644
--- a/docs/administration/authentication/microsoft-azure-ad.md
+++ b/docs/administration/authentication/microsoft-entra-id.md
@@ -1,8 +1,8 @@
-# Microsoft Azure AD
+# Microsoft Entra ID
-This guide explains how to configure single sign-on (SSO) support for NetBox using [Microsoft Azure Active Directory (AD)](https://azure.microsoft.com/en-us/services/active-directory/) as an authentication backend.
+This guide explains how to configure single sign-on (SSO) support for NetBox using [Microsoft Entra ID](https://www.microsoft.com/en-us/security/business/identity-access/microsoft-entra-id) as an authentication backend.
-## Azure AD Configuration
+## Entra ID Configuration
### 1. Create a test user (optional)
@@ -16,7 +16,7 @@ Under the Azure Active Directory dashboard, navigate to **Add > App registration
Enter a name for the registration (e.g. "NetBox") and ensure that the "single tenant" option is selected.
-Under "Redirect URI", select "Web" for the platform and enter the path to your NetBox installation, ending with `/oauth/complete/azuread-oauth2/`. Note that this URI **must** begin with `https://` unless you are referencing localhost (for development purposes).
+Under "Redirect URI", select "Web" for the platform and enter the path to your NetBox installation, ending with `/oauth/complete/entraid-oauth2/`. Note that this URI **must** begin with `https://` unless you are referencing localhost (for development purposes).

diff --git a/docs/development/getting-started.md b/docs/development/getting-started.md
index 4dbdb63b2..374ed34b0 100644
--- a/docs/development/getting-started.md
+++ b/docs/development/getting-started.md
@@ -70,10 +70,10 @@ NetBox ships with a [git pre-commit hook](https://githooks.com/) script that aut
cd .git/hooks/
ln -s ../../scripts/git-hooks/pre-commit
```
-For the pre-commit hooks to work, you will also need to install the pycodestyle package:
+For the pre-commit hooks to work, you will also need to install the [ruff](https://docs.astral.sh/ruff/) linter:
```no-highlight
-python -m pip install pycodestyle
+python -m pip install ruff
```
...and set up the yarn packages as shown in the [Web UI Development Guide](web-ui.md)
diff --git a/docs/development/style-guide.md b/docs/development/style-guide.md
index 9e5606749..0d4caf395 100644
--- a/docs/development/style-guide.md
+++ b/docs/development/style-guide.md
@@ -1,6 +1,6 @@
# Style Guide
-NetBox generally follows the [Django style guide](https://docs.djangoproject.com/en/stable/internals/contributing/writing-code/coding-style/), which is itself based on [PEP 8](https://www.python.org/dev/peps/pep-0008/). [Pycodestyle](https://github.com/pycqa/pycodestyle) is used to validate code formatting, ignoring certain violations.
+NetBox generally follows the [Django style guide](https://docs.djangoproject.com/en/stable/internals/contributing/writing-code/coding-style/), which is itself based on [PEP 8](https://www.python.org/dev/peps/pep-0008/). [ruff](https://docs.astral.sh/ruff/) is used for linting (with certain [exceptions](#linter-exceptions)).
## Code
@@ -20,32 +20,32 @@ NetBox generally follows the [Django style guide](https://docs.djangoproject.com
* Nested API serializers generate minimal representations of an object. These are stored separately from the primary serializers to avoid circular dependencies. Always import nested serializers from other apps directly. For example, from within the DCIM app you would write `from ipam.api.nested_serializers import NestedIPAddressSerializer`.
-### PEP 8 Exceptions
+### Linting
-NetBox ignores certain PEP8 assertions. These are listed below.
+The [ruff](https://docs.astral.sh/ruff/) linter is used to enforce code style. A [pre-commit hook](./getting-started.md#3-enable-pre-commit-hooks) which runs this automatically is included with NetBox. To invoke `ruff` manually, run:
-#### Wildcard Imports
+```
+ruff check netbox/
+```
+
+#### Linter Exceptions
+
+The following rules are ignored when linting.
+
+##### [E501](https://docs.astral.sh/ruff/rules/line-too-long/): Line too long
+
+NetBox does not enforce a hard restriction on line length, although a maximum length of 120 characters is strongly encouraged for Python code where possible. The maximum length does not apply to HTML templates or to automatically generated code (e.g. database migrations).
+
+##### [F403](https://docs.astral.sh/ruff/rules/undefined-local-with-import-star/): Undefined local with import star
Wildcard imports (for example, `from .constants import *`) are acceptable under any of the following conditions:
* The library being import contains only constant declarations (e.g. `constants.py`)
* The library being imported explicitly defines `__all__`
-#### Maximum Line Length (E501)
+##### [F405](https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage/): Undefined local with import star usage
-NetBox does not restrict lines to a maximum length of 79 characters. We use a maximum line length of 120 characters, however this is not enforced by CI. The maximum length does not apply to HTML templates or to automatically generated code (e.g. database migrations).
-
-#### Line Breaks Following Binary Operators (W504)
-
-Line breaks are permitted following binary operators.
-
-### Enforcing Code Style
-
-The [`pycodestyle`](https://pypi.org/project/pycodestyle/) utility (formerly `pep8`) is used by the CI process to enforce code style. A [pre-commit hook](./getting-started.md#3-enable-pre-commit-hooks) which runs this automatically is included with NetBox. To invoke `pycodestyle` manually, run:
-
-```
-pycodestyle --ignore=W504,E501 netbox/
-```
+The justification for ignoring this rule is the same as F403 above.
### Introducing New Dependencies
diff --git a/docs/features/authentication-permissions.md b/docs/features/authentication-permissions.md
index 14e13d5cd..cf3d11ef3 100644
--- a/docs/features/authentication-permissions.md
+++ b/docs/features/authentication-permissions.md
@@ -41,7 +41,7 @@ NetBox integrates with the open source [python-social-auth](https://github.com/p
* Google
* Hashicorp Vault
* Keycloak
-* Microsoft Azure AD
+* Microsoft Entra ID
* Microsoft Graph
* Okta
* OIDC
diff --git a/docs/features/synchronized-data.md b/docs/features/synchronized-data.md
index 8c95c8779..23c79feed 100644
--- a/docs/features/synchronized-data.md
+++ b/docs/features/synchronized-data.md
@@ -13,6 +13,9 @@ To enable remote data synchronization, the NetBox administrator first designates
!!! info
Data backends which connect to external sources typically require the installation of one or more supporting Python libraries. The Git backend requires the [`dulwich`](https://www.dulwich.io/) package, and the S3 backend requires the [`boto3`](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) package. These must be installed within NetBox's environment to enable these backends.
+!!! info
+ If you are configuring Git and have `HTTP_PROXIES` configured to use the SOCKS protocol, you will also need to install the [`python_socks`](https://pypi.org/project/python-socks/) Python library.
+
Each type of remote source has its own configuration parameters. For instance, a git source will ask the user to specify a branch and authentication credentials. Once the source has been created, a synchronization job is run to automatically replicate remote files in the local database.
The following NetBox models can be associated with replicated data files:
diff --git a/docs/media/misc/netbox_cloud.png b/docs/media/misc/netbox_cloud.png
deleted file mode 100644
index f9deca674..000000000
Binary files a/docs/media/misc/netbox_cloud.png and /dev/null differ
diff --git a/docs/media/misc/netbox_logo.png b/docs/media/misc/netbox_logo.png
deleted file mode 100644
index c6e0a58e6..000000000
Binary files a/docs/media/misc/netbox_logo.png and /dev/null differ
diff --git a/docs/models/ipam/asn.md b/docs/models/ipam/asn.md
index 8de3cfd93..17fa5ebe3 100644
--- a/docs/models/ipam/asn.md
+++ b/docs/models/ipam/asn.md
@@ -1,6 +1,6 @@
# ASNs
-An Autonomous System Number (ASN) is a numeric identifier used in the BGP protocol to identify which [autonomous system](https://en.wikipedia.org/wiki/Autonomous_system_%28Internet%29) a particular prefix is originating and transiting through. NetBox support both 32- and 64- ASNs.
+An Autonomous System Number (ASN) is a numeric identifier used in the Border Gateway Protocol (BGP) to identify which [autonomous system](https://en.wikipedia.org/wiki/Autonomous_system_%28Internet%29) a particular prefix is originating from or transiting through. NetBox supports both 16- and 32-bit ASNs.
ASNs must be globally unique within NetBox, and may be allocated from within a [defined range](./asnrange.md). Each ASN may be assigned to multiple [sites](../dcim/site.md).
@@ -8,7 +8,7 @@ ASNs must be globally unique within NetBox, and may be allocated from within a [
### AS Number
-The 32- or 64-bit AS number.
+The 16- or 32-bit AS number.
### RIR
diff --git a/docs/models/vpn/l2vpn.md b/docs/models/vpn/l2vpn.md
index 79b7435bf..1167c1c17 100644
--- a/docs/models/vpn/l2vpn.md
+++ b/docs/models/vpn/l2vpn.md
@@ -28,6 +28,7 @@ The technology employed in forming and operating the L2VPN. Choices include:
* VXLAN-EVPN
* MPLS-EVPN
* PBB-EVPN
+* EVPN-VPWS
!!! note
Designating the type as VPWS, EPL, EP-LAN, EP-TREE will limit the L2VPN instance to two terminations.
diff --git a/docs/release-notes/version-4.1.md b/docs/release-notes/version-4.1.md
index b6706d647..5b353d54f 100644
--- a/docs/release-notes/version-4.1.md
+++ b/docs/release-notes/version-4.1.md
@@ -1,11 +1,48 @@
# NetBox v4.1
-## v4.1.2 (FUTURE)
+## v4.1.4 (FUTURE)
+
+### Enhancements
+
+* [#11671](https://github.com/netbox-community/netbox/issues/11671) - Display device's rack position in cable traces
+* [#15829](https://github.com/netbox-community/netbox/issues/15829) - Rename Microsoft Azure AD SSO backend to Microsoft Entra ID
+* [#17079](https://github.com/netbox-community/netbox/issues/17079) - Introduce additional choices for device airflow direction
+* [#17216](https://github.com/netbox-community/netbox/issues/17216) - Add EVPN-VPWS L2VPN type
+* [#17655](https://github.com/netbox-community/netbox/issues/17655) - Limit the display of tagged VLANs within interface tables
+* [#17669](https://github.com/netbox-community/netbox/issues/17669) - Enable filtering VLANs by assigned device or VM interface
+
+### Bug Fixes
+
+* [#16024](https://github.com/netbox-community/netbox/issues/16024) - Fix AND/OR filtering in GraphQL API for selection fields
+* [#17562](https://github.com/netbox-community/netbox/issues/17562) - Fix GraphQL API query support for custom field choices
+* [#17566](https://github.com/netbox-community/netbox/issues/17566) - Fix AttributeError exception resulting from background jobs with no associated object type
+* [#17636](https://github.com/netbox-community/netbox/issues/17636) - Fix filtering of related objects when adding a power port, rear port, or inventory item template to a device type
+* [#17648](https://github.com/netbox-community/netbox/issues/17648) - Fix AttributeError exception when attempting to delete a background job under certain conditions
+* [#17663](https://github.com/netbox-community/netbox/issues/17663) - Fix extended lookups for choice field filters
+* [#17671](https://github.com/netbox-community/netbox/issues/17671) - Fix the display of rack types in global search results
+
+---
+
+## v4.1.3 (2024-10-02)
+
+### Enhancements
+
+* [#17639](https://github.com/netbox-community/netbox/issues/17639) - Add SOCKS support to proxy settings for Git remote data sources
+
+### Bug Fixes
+
+* [#17558](https://github.com/netbox-community/netbox/issues/17558) - Raise validation error when attempting to remove a custom field choice in use
+
+---
+
+## v4.1.2 (2024-09-26)
### Enhancements
* [#14201](https://github.com/netbox-community/netbox/issues/14201) - Enable global search for AS numbers using "AS" prefix
* [#15408](https://github.com/netbox-community/netbox/issues/15408) - Enable bulk import of primary IPv4 & IPv6 addresses for virtual device contexts (VDCs)
+* [#16781](https://github.com/netbox-community/netbox/issues/16781) - Add 100Base-X SFP interface type
+* [#17255](https://github.com/netbox-community/netbox/issues/17255) - Include return URL when creating new IP address from prefix IPs list
* [#17471](https://github.com/netbox-community/netbox/issues/17471) - Add Eaton C39 power outlet type
* [#17482](https://github.com/netbox-community/netbox/issues/17482) - Do not preload Branch & StagedChange models in `nbshell`
* [#17550](https://github.com/netbox-community/netbox/issues/17550) - Add IEEE 802.15.4 wireless interface type
@@ -15,14 +52,22 @@
* [#16837](https://github.com/netbox-community/netbox/issues/16837) - Fix filtering of cables with no type assigned
* [#17083](https://github.com/netbox-community/netbox/issues/17083) - Trim clickable area of form field labels
* [#17126](https://github.com/netbox-community/netbox/issues/17126) - Show total device weight in both imperial & metric units
+* [#17360](https://github.com/netbox-community/netbox/issues/17360) - Fix AttributeError under child object views when experimental HTMX navigation is enabled
* [#17406](https://github.com/netbox-community/netbox/issues/17406) - Fix the cleanup of stale custom field data after removing a plugin
+* [#17419](https://github.com/netbox-community/netbox/issues/17419) - Rebuild MPTT for module bays on upgrade to v4.1
* [#17492](https://github.com/netbox-community/netbox/issues/17492) - Fix URL resolution in `NetBoxModelSerializer` for plugin models
+* [#17497](https://github.com/netbox-community/netbox/issues/17497) - Fix uncaught FieldError exception when referencing an invalid field on a related object during bulk import
+* [#17498](https://github.com/netbox-community/netbox/issues/17498) - Fix MultipleObjectsReturned exception when importing a device type without uniquely specifying a manufacturer
* [#17501](https://github.com/netbox-community/netbox/issues/17501) - Fix reporting of last run time & status for custom scripts under UI
+* [#17511](https://github.com/netbox-community/netbox/issues/17511) - Restore consistent font support for non-Latin characters
* [#17517](https://github.com/netbox-community/netbox/issues/17517) - Fix cable termination selection after switching termination type
* [#17521](https://github.com/netbox-community/netbox/issues/17521) - Correct text color in notification pop-ups under dark mode
* [#17522](https://github.com/netbox-community/netbox/issues/17522) - Fix language translation of form field labels under user preferences
* [#17537](https://github.com/netbox-community/netbox/issues/17537) - Fix global search support for ASN range names
* [#17555](https://github.com/netbox-community/netbox/issues/17555) - Fix toggling disconnected interfaces under device view
+* [#17601](https://github.com/netbox-community/netbox/issues/17601) - Record change to terminating object when disconnecting a cable
+* [#17605](https://github.com/netbox-community/netbox/issues/17605) - Fix calculation of aggregate VM disk space under cluster view
+* [#17611](https://github.com/netbox-community/netbox/issues/17611) - Correct custom field minimum value validation error message
---
diff --git a/mkdocs.yml b/mkdocs.yml
index 656a2e03f..94a4edcb3 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -156,7 +156,7 @@ nav:
- Administration:
- Authentication:
- Overview: 'administration/authentication/overview.md'
- - Microsoft Azure AD: 'administration/authentication/microsoft-azure-ad.md'
+ - Microsoft Entra ID: 'administration/authentication/microsoft-entra-id.md'
- Okta: 'administration/authentication/okta.md'
- Permissions: 'administration/permissions.md'
- Error Reporting: 'administration/error-reporting.md'
diff --git a/netbox/circuits/api/nested_serializers.py b/netbox/circuits/api/nested_serializers.py
index 6de2cbf54..487749872 100644
--- a/netbox/circuits/api/nested_serializers.py
+++ b/netbox/circuits/api/nested_serializers.py
@@ -18,7 +18,7 @@ __all__ = [
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/circuits/apps.py b/netbox/circuits/apps.py
index df6804303..4d5f177e2 100644
--- a/netbox/circuits/apps.py
+++ b/netbox/circuits/apps.py
@@ -7,7 +7,7 @@ class CircuitsConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
- from . import signals, search
+ from . import signals, search # noqa: F401
# Register models
register_models(*self.get_models())
diff --git a/netbox/circuits/forms/bulk_import.py b/netbox/circuits/forms/bulk_import.py
index 851f54881..d5cdc00a7 100644
--- a/netbox/circuits/forms/bulk_import.py
+++ b/netbox/circuits/forms/bulk_import.py
@@ -1,5 +1,4 @@
from django import forms
-from django.utils.safestring import mark_safe
from django.utils.translation import gettext_lazy as _
from circuits.choices import *
diff --git a/netbox/circuits/graphql/filters.py b/netbox/circuits/graphql/filters.py
index 3ded6e681..b8398b2b9 100644
--- a/netbox/circuits/graphql/filters.py
+++ b/netbox/circuits/graphql/filters.py
@@ -1,7 +1,6 @@
-import strawberry
import strawberry_django
-from circuits import filtersets, models
+from circuits import filtersets, models
from netbox.graphql.filter_mixins import autotype_decorator, BaseFilterMixin
__all__ = (
diff --git a/netbox/circuits/tests/test_views.py b/netbox/circuits/tests/test_views.py
index 87e6d99b7..b06ade30b 100644
--- a/netbox/circuits/tests/test_views.py
+++ b/netbox/circuits/tests/test_views.py
@@ -171,7 +171,7 @@ class CircuitTestCase(ViewTestCases.PrimaryObjectViewTestCase):
)
cls.csv_update_data = (
- f"id,cid,description,status",
+ "id,cid,description,status",
f"{circuits[0].pk},Circuit 7,New description7,{CircuitStatusChoices.STATUS_DECOMMISSIONED}",
f"{circuits[1].pk},Circuit 8,New description8,{CircuitStatusChoices.STATUS_DECOMMISSIONED}",
f"{circuits[2].pk},Circuit 9,New description9,{CircuitStatusChoices.STATUS_DECOMMISSIONED}",
diff --git a/netbox/core/api/nested_serializers.py b/netbox/core/api/nested_serializers.py
index 3b40853cf..df7b41ca7 100644
--- a/netbox/core/api/nested_serializers.py
+++ b/netbox/core/api/nested_serializers.py
@@ -16,7 +16,7 @@ __all__ = (
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/core/api/schema.py b/netbox/core/api/schema.py
index 7c4ae722e..1ac822b8c 100644
--- a/netbox/core/api/schema.py
+++ b/netbox/core/api/schema.py
@@ -8,10 +8,8 @@ from drf_spectacular.plumbing import (
build_basic_type, build_choice_field, build_media_type_object, build_object_type, get_doc,
)
from drf_spectacular.types import OpenApiTypes
-from rest_framework import serializers
-from rest_framework.relations import ManyRelatedField
-from netbox.api.fields import ChoiceField, SerializedPKRelatedField
+from netbox.api.fields import ChoiceField
from netbox.api.serializers import WritableNestedSerializer
# see netbox.api.routers.NetBoxRouter
diff --git a/netbox/core/api/serializers_/jobs.py b/netbox/core/api/serializers_/jobs.py
index e5e07aa41..544dddb56 100644
--- a/netbox/core/api/serializers_/jobs.py
+++ b/netbox/core/api/serializers_/jobs.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from core.choices import *
from core.models import Job
from netbox.api.fields import ChoiceField, ContentTypeField
diff --git a/netbox/core/apps.py b/netbox/core/apps.py
index 855ac3170..1dfc7a65e 100644
--- a/netbox/core/apps.py
+++ b/netbox/core/apps.py
@@ -16,9 +16,9 @@ class CoreConfig(AppConfig):
name = "core"
def ready(self):
- from core.api import schema # noqa
+ from core.api import schema # noqa: F401
from netbox.models.features import register_models
- from . import data_backends, events, search
+ from . import data_backends, events, search # noqa: F401
# Register models
register_models(*self.get_models())
diff --git a/netbox/core/data_backends.py b/netbox/core/data_backends.py
index 1b64f5f5c..770a3b258 100644
--- a/netbox/core/data_backends.py
+++ b/netbox/core/data_backends.py
@@ -8,10 +8,13 @@ from urllib.parse import urlparse
from django import forms
from django.conf import settings
+from django.core.exceptions import ImproperlyConfigured
from django.utils.translation import gettext as _
from netbox.data_backends import DataBackend
from netbox.utils import register_data_backend
+from utilities.constants import HTTP_PROXY_SUPPORTED_SCHEMAS, HTTP_PROXY_SUPPORTED_SOCK_SCHEMAS
+from utilities.socks import ProxyPoolManager
from .exceptions import SyncError
__all__ = (
@@ -31,7 +34,7 @@ class LocalBackend(DataBackend):
@contextmanager
def fetch(self):
- logger.debug(f"Data source type is local; skipping fetch")
+ logger.debug("Data source type is local; skipping fetch")
local_path = urlparse(self.url).path # Strip file:// scheme
yield local_path
@@ -67,11 +70,18 @@ class GitBackend(DataBackend):
# Initialize backend config
config = ConfigDict()
+ self.use_socks = False
# Apply HTTP proxy (if configured)
- if settings.HTTP_PROXIES and self.url_scheme in ('http', 'https'):
- if proxy := settings.HTTP_PROXIES.get(self.url_scheme):
- config.set("http", "proxy", proxy)
+ if settings.HTTP_PROXIES:
+ if proxy := settings.HTTP_PROXIES.get(self.url_scheme, None):
+ if urlparse(proxy).scheme not in HTTP_PROXY_SUPPORTED_SCHEMAS:
+ raise ImproperlyConfigured(f"Unsupported Git DataSource proxy scheme: {urlparse(proxy).scheme}")
+
+ if self.url_scheme in ('http', 'https'):
+ config.set("http", "proxy", proxy)
+ if urlparse(proxy).scheme in HTTP_PROXY_SUPPORTED_SOCK_SCHEMAS:
+ self.use_socks = True
return config
@@ -87,6 +97,10 @@ class GitBackend(DataBackend):
"errstream": porcelain.NoneStream(),
}
+ # check if using socks for proxy - if so need to use custom pool_manager
+ if self.use_socks:
+ clone_args['pool_manager'] = ProxyPoolManager(settings.HTTP_PROXIES.get(self.url_scheme))
+
if self.url_scheme in ('http', 'https'):
if self.params.get('username'):
clone_args.update(
diff --git a/netbox/core/graphql/mixins.py b/netbox/core/graphql/mixins.py
index 43f8761d1..5195b52a0 100644
--- a/netbox/core/graphql/mixins.py
+++ b/netbox/core/graphql/mixins.py
@@ -15,7 +15,7 @@ __all__ = (
class ChangelogMixin:
@strawberry_django.field
- def changelog(self, info) -> List[Annotated["ObjectChangeType", strawberry.lazy('.types')]]:
+ def changelog(self, info) -> List[Annotated["ObjectChangeType", strawberry.lazy('.types')]]: # noqa: F821
content_type = ContentType.objects.get_for_model(self)
object_changes = ObjectChange.objects.filter(
changed_object_type=content_type,
diff --git a/netbox/core/management/commands/syncdatasource.py b/netbox/core/management/commands/syncdatasource.py
index aa8137952..990b6eb2a 100644
--- a/netbox/core/management/commands/syncdatasource.py
+++ b/netbox/core/management/commands/syncdatasource.py
@@ -26,7 +26,7 @@ class Command(BaseCommand):
if invalid_names := set(options['name']) - found_names:
raise CommandError(f"Invalid data source names: {', '.join(invalid_names)}")
else:
- raise CommandError(f"Must specify at least one data source, or set --all.")
+ raise CommandError("Must specify at least one data source, or set --all.")
if len(options['name']) > 1:
self.stdout.write(f"Syncing {len(datasources)} data sources.")
@@ -43,4 +43,4 @@ class Command(BaseCommand):
raise e
if len(options['name']) > 1:
- self.stdout.write(f"Finished.")
+ self.stdout.write("Finished.")
diff --git a/netbox/core/models/data.py b/netbox/core/models/data.py
index a40b58bc7..39ee8fa57 100644
--- a/netbox/core/models/data.py
+++ b/netbox/core/models/data.py
@@ -122,7 +122,7 @@ class DataSource(JobsMixin, PrimaryModel):
# Ensure URL scheme matches selected type
if self.backend_class.is_local and self.url_scheme not in ('file', ''):
raise ValidationError({
- 'source_url': f"URLs for local sources must start with file:// (or specify no scheme)"
+ 'source_url': "URLs for local sources must start with file:// (or specify no scheme)"
})
def to_objectchange(self, action):
@@ -198,7 +198,7 @@ class DataSource(JobsMixin, PrimaryModel):
logger.debug(f"Updated {updated_count} files")
# Bulk delete deleted files
- deleted_count, _ = DataFile.objects.filter(pk__in=deleted_file_ids).delete()
+ deleted_count, __ = DataFile.objects.filter(pk__in=deleted_file_ids).delete()
logger.debug(f"Deleted {deleted_count} files")
# Walk the local replication to find new files
diff --git a/netbox/core/models/jobs.py b/netbox/core/models/jobs.py
index 4a327a1d8..e1b5715dd 100644
--- a/netbox/core/models/jobs.py
+++ b/netbox/core/models/jobs.py
@@ -13,8 +13,6 @@ from django.utils.translation import gettext as _
from core.choices import JobStatusChoices
from core.models import ObjectType
from core.signals import job_end, job_start
-from netbox.config import get_config
-from netbox.constants import RQ_QUEUE_DEFAULT
from utilities.querysets import RestrictedQuerySet
from utilities.rqworker import get_queue_for_model
@@ -118,10 +116,11 @@ class Job(models.Model):
def get_absolute_url(self):
# TODO: Employ dynamic registration
- if self.object_type.model == 'reportmodule':
- return reverse(f'extras:report_result', kwargs={'job_pk': self.pk})
- if self.object_type.model == 'scriptmodule':
- return reverse(f'extras:script_result', kwargs={'job_pk': self.pk})
+ if self.object_type:
+ if self.object_type.model == 'reportmodule':
+ return reverse('extras:report_result', kwargs={'job_pk': self.pk})
+ elif self.object_type.model == 'scriptmodule':
+ return reverse('extras:script_result', kwargs={'job_pk': self.pk})
return reverse('core:job', args=[self.pk])
def get_status_color(self):
@@ -154,7 +153,7 @@ class Job(models.Model):
def delete(self, *args, **kwargs):
super().delete(*args, **kwargs)
- rq_queue_name = get_config().QUEUE_MAPPINGS.get(self.object_type.model, RQ_QUEUE_DEFAULT)
+ rq_queue_name = get_queue_for_model(self.object_type.model if self.object_type else None)
queue = django_rq.get_queue(rq_queue_name)
job = queue.fetch_job(str(self.job_id))
diff --git a/netbox/dcim/api/nested_serializers.py b/netbox/dcim/api/nested_serializers.py
index 5d83b9145..4b8f0db4a 100644
--- a/netbox/dcim/api/nested_serializers.py
+++ b/netbox/dcim/api/nested_serializers.py
@@ -56,7 +56,7 @@ __all__ = [
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/dcim/api/serializers_/manufacturers.py b/netbox/dcim/api/serializers_/manufacturers.py
index 61158e0f7..1a1eea6ec 100644
--- a/netbox/dcim/api/serializers_/manufacturers.py
+++ b/netbox/dcim/api/serializers_/manufacturers.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from dcim.models import Manufacturer
from netbox.api.fields import RelatedObjectCountField
from netbox.api.serializers import NetBoxModelSerializer
diff --git a/netbox/dcim/api/serializers_/platforms.py b/netbox/dcim/api/serializers_/platforms.py
index 3c846f8fd..2f4745701 100644
--- a/netbox/dcim/api/serializers_/platforms.py
+++ b/netbox/dcim/api/serializers_/platforms.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from dcim.models import Platform
from extras.api.serializers_.configtemplates import ConfigTemplateSerializer
from netbox.api.fields import RelatedObjectCountField
diff --git a/netbox/dcim/api/serializers_/power.py b/netbox/dcim/api/serializers_/power.py
index fc65a0732..4c2cf54fb 100644
--- a/netbox/dcim/api/serializers_/power.py
+++ b/netbox/dcim/api/serializers_/power.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from dcim.choices import *
from dcim.models import PowerFeed, PowerPanel
from netbox.api.fields import ChoiceField, RelatedObjectCountField
diff --git a/netbox/dcim/api/serializers_/roles.py b/netbox/dcim/api/serializers_/roles.py
index e9c9d3563..8f922da10 100644
--- a/netbox/dcim/api/serializers_/roles.py
+++ b/netbox/dcim/api/serializers_/roles.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from dcim.models import DeviceRole, InventoryItemRole
from extras.api.serializers_.configtemplates import ConfigTemplateSerializer
from netbox.api.fields import RelatedObjectCountField
diff --git a/netbox/dcim/apps.py b/netbox/dcim/apps.py
index 4df66e367..9653d3b93 100644
--- a/netbox/dcim/apps.py
+++ b/netbox/dcim/apps.py
@@ -10,7 +10,7 @@ class DCIMConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
from utilities.counters import connect_counters
- from . import signals, search
+ from . import signals, search # noqa: F401
from .models import CableTermination, Device, DeviceType, VirtualChassis
# Register models
diff --git a/netbox/dcim/choices.py b/netbox/dcim/choices.py
index 8a16c3460..fee587e6b 100644
--- a/netbox/dcim/choices.py
+++ b/netbox/dcim/choices.py
@@ -197,6 +197,9 @@ class DeviceAirflowChoices(ChoiceSet):
AIRFLOW_LEFT_TO_RIGHT = 'left-to-right'
AIRFLOW_RIGHT_TO_LEFT = 'right-to-left'
AIRFLOW_SIDE_TO_REAR = 'side-to-rear'
+ AIRFLOW_REAR_TO_SIDE = 'rear-to-side'
+ AIRFLOW_BOTTOM_TO_TOP = 'bottom-to-top'
+ AIRFLOW_TOP_TO_BOTTOM = 'top-to-bottom'
AIRFLOW_PASSIVE = 'passive'
AIRFLOW_MIXED = 'mixed'
@@ -206,6 +209,9 @@ class DeviceAirflowChoices(ChoiceSet):
(AIRFLOW_LEFT_TO_RIGHT, _('Left to right')),
(AIRFLOW_RIGHT_TO_LEFT, _('Right to left')),
(AIRFLOW_SIDE_TO_REAR, _('Side to rear')),
+ (AIRFLOW_REAR_TO_SIDE, _('Rear to side')),
+ (AIRFLOW_BOTTOM_TO_TOP, _('Bottom to top')),
+ (AIRFLOW_TOP_TO_BOTTOM, _('Top to bottom')),
(AIRFLOW_PASSIVE, _('Passive')),
(AIRFLOW_MIXED, _('Mixed')),
)
@@ -863,6 +869,7 @@ class InterfaceTypeChoices(ChoiceSet):
TYPE_100ME_LFX = '100base-lfx'
TYPE_100ME_FIXED = '100base-tx'
TYPE_100ME_T1 = '100base-t1'
+ TYPE_100ME_SFP = '100base-x-sfp'
TYPE_1GE_FIXED = '1000base-t'
TYPE_1GE_TX_FIXED = '1000base-tx'
TYPE_1GE_GBIC = '1000base-x-gbic'
@@ -1036,6 +1043,7 @@ class InterfaceTypeChoices(ChoiceSet):
(
_('Ethernet (modular)'),
(
+ (TYPE_100ME_SFP, 'SFP (100ME)'),
(TYPE_1GE_GBIC, 'GBIC (1GE)'),
(TYPE_1GE_SFP, 'SFP (1GE)'),
(TYPE_10GE_SFP_PLUS, 'SFP+ (10GE)'),
diff --git a/netbox/dcim/filtersets.py b/netbox/dcim/filtersets.py
index d49e937cd..04ac3a3d2 100644
--- a/netbox/dcim/filtersets.py
+++ b/netbox/dcim/filtersets.py
@@ -271,7 +271,7 @@ class LocationFilterSet(TenancyFilterSet, ContactModelFilterSet, OrganizationalM
class Meta:
model = Location
- fields = ('id', 'name', 'slug', 'status', 'facility', 'description')
+ fields = ('id', 'name', 'slug', 'facility', 'description')
def search(self, queryset, name, value):
if not value.strip():
diff --git a/netbox/dcim/forms/bulk_import.py b/netbox/dcim/forms/bulk_import.py
index c6204fffe..e34db0016 100644
--- a/netbox/dcim/forms/bulk_import.py
+++ b/netbox/dcim/forms/bulk_import.py
@@ -368,13 +368,13 @@ class ManufacturerImportForm(NetBoxModelImportForm):
class DeviceTypeImportForm(NetBoxModelImportForm):
- manufacturer = forms.ModelChoiceField(
+ manufacturer = CSVModelChoiceField(
label=_('Manufacturer'),
queryset=Manufacturer.objects.all(),
to_field_name='name',
help_text=_('The manufacturer which produces this device type')
)
- default_platform = forms.ModelChoiceField(
+ default_platform = CSVModelChoiceField(
label=_('Default platform'),
queryset=Platform.objects.all(),
to_field_name='name',
diff --git a/netbox/dcim/forms/connections.py b/netbox/dcim/forms/connections.py
index f107c3476..324f8ecfd 100644
--- a/netbox/dcim/forms/connections.py
+++ b/netbox/dcim/forms/connections.py
@@ -4,7 +4,7 @@ from django.utils.translation import gettext_lazy as _
from circuits.models import Circuit, CircuitTermination
from dcim.models import *
-from utilities.forms.fields import DynamicModelChoiceField, DynamicModelMultipleChoiceField
+from utilities.forms.fields import DynamicModelMultipleChoiceField
from .model_forms import CableForm
diff --git a/netbox/dcim/forms/model_forms.py b/netbox/dcim/forms/model_forms.py
index c22aeeea3..095882d13 100644
--- a/netbox/dcim/forms/model_forms.py
+++ b/netbox/dcim/forms/model_forms.py
@@ -954,7 +954,7 @@ class PowerOutletTemplateForm(ModularComponentTemplateForm):
queryset=PowerPortTemplate.objects.all(),
required=False,
query_params={
- 'devicetype_id': '$device_type',
+ 'device_type_id': '$device_type',
}
)
@@ -1001,8 +1001,8 @@ class FrontPortTemplateForm(ModularComponentTemplateForm):
queryset=RearPortTemplate.objects.all(),
required=False,
query_params={
- 'devicetype_id': '$device_type',
- 'moduletype_id': '$module_type',
+ 'device_type_id': '$device_type',
+ 'module_type_id': '$module_type',
}
)
@@ -1063,7 +1063,7 @@ class InventoryItemTemplateForm(ComponentTemplateForm):
queryset=InventoryItemTemplate.objects.all(),
required=False,
query_params={
- 'devicetype_id': '$device_type'
+ 'device_type_id': '$device_type'
}
)
role = DynamicModelChoiceField(
diff --git a/netbox/dcim/forms/object_create.py b/netbox/dcim/forms/object_create.py
index f811700b4..d18c7ed14 100644
--- a/netbox/dcim/forms/object_create.py
+++ b/netbox/dcim/forms/object_create.py
@@ -261,8 +261,8 @@ class FrontPortCreateForm(ComponentCreateForm, model_forms.FrontPortForm):
# TODO: Clean up the application of HTMXSelect attributes
attrs={
'hx-get': '.',
- 'hx-include': f'#form_fields',
- 'hx-target': f'#form_fields',
+ 'hx-include': '#form_fields',
+ 'hx-target': '#form_fields',
}
)
)
diff --git a/netbox/dcim/graphql/mixins.py b/netbox/dcim/graphql/mixins.py
index 589af50c8..2e5ab7ea7 100644
--- a/netbox/dcim/graphql/mixins.py
+++ b/netbox/dcim/graphql/mixins.py
@@ -1,7 +1,6 @@
from typing import Annotated, List, Union
import strawberry
-import strawberry_django
__all__ = (
'CabledObjectMixin',
@@ -11,18 +10,18 @@ __all__ = (
@strawberry.type
class CabledObjectMixin:
- cable: Annotated["CableType", strawberry.lazy('dcim.graphql.types')] | None
+ cable: Annotated["CableType", strawberry.lazy('dcim.graphql.types')] | None # noqa: F821
link_peers: List[Annotated[Union[
- Annotated["CircuitTerminationType", strawberry.lazy('circuits.graphql.types')],
- Annotated["ConsolePortType", strawberry.lazy('dcim.graphql.types')],
- Annotated["ConsoleServerPortType", strawberry.lazy('dcim.graphql.types')],
- Annotated["FrontPortType", strawberry.lazy('dcim.graphql.types')],
- Annotated["InterfaceType", strawberry.lazy('dcim.graphql.types')],
- Annotated["PowerFeedType", strawberry.lazy('dcim.graphql.types')],
- Annotated["PowerOutletType", strawberry.lazy('dcim.graphql.types')],
- Annotated["PowerPortType", strawberry.lazy('dcim.graphql.types')],
- Annotated["RearPortType", strawberry.lazy('dcim.graphql.types')],
+ Annotated["CircuitTerminationType", strawberry.lazy('circuits.graphql.types')], # noqa: F821
+ Annotated["ConsolePortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["ConsoleServerPortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["FrontPortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["InterfaceType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["PowerFeedType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["PowerOutletType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["PowerPortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["RearPortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
], strawberry.union("LinkPeerType")]]
@@ -30,14 +29,14 @@ class CabledObjectMixin:
class PathEndpointMixin:
connected_endpoints: List[Annotated[Union[
- Annotated["CircuitTerminationType", strawberry.lazy('circuits.graphql.types')],
- Annotated["ConsolePortType", strawberry.lazy('dcim.graphql.types')],
- Annotated["ConsoleServerPortType", strawberry.lazy('dcim.graphql.types')],
- Annotated["FrontPortType", strawberry.lazy('dcim.graphql.types')],
- Annotated["InterfaceType", strawberry.lazy('dcim.graphql.types')],
- Annotated["PowerFeedType", strawberry.lazy('dcim.graphql.types')],
- Annotated["PowerOutletType", strawberry.lazy('dcim.graphql.types')],
- Annotated["PowerPortType", strawberry.lazy('dcim.graphql.types')],
- Annotated["ProviderNetworkType", strawberry.lazy('circuits.graphql.types')],
- Annotated["RearPortType", strawberry.lazy('dcim.graphql.types')],
+ Annotated["CircuitTerminationType", strawberry.lazy('circuits.graphql.types')], # noqa: F821
+ Annotated["ConsolePortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["ConsoleServerPortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["FrontPortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["InterfaceType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["PowerFeedType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["PowerOutletType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["PowerPortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
+ Annotated["ProviderNetworkType", strawberry.lazy('circuits.graphql.types')], # noqa: F821
+ Annotated["RearPortType", strawberry.lazy('dcim.graphql.types')], # noqa: F821
], strawberry.union("ConnectedEndpointType")]]
diff --git a/netbox/dcim/management/commands/trace_paths.py b/netbox/dcim/management/commands/trace_paths.py
index d34a428e4..592aeb6a7 100644
--- a/netbox/dcim/management/commands/trace_paths.py
+++ b/netbox/dcim/management/commands/trace_paths.py
@@ -60,7 +60,7 @@ class Command(BaseCommand):
self.stdout.write((self.style.SUCCESS(f' Deleted {deleted_count} paths')))
# Reinitialize the model's PK sequence
- self.stdout.write(f'Resetting database sequence for CablePath model')
+ self.stdout.write('Resetting database sequence for CablePath model')
sequence_sql = connection.ops.sequence_reset_sql(no_style(), [CablePath])
with connection.cursor() as cursor:
for sql in sequence_sql:
diff --git a/netbox/dcim/migrations/0191_module_bay_rebuild.py b/netbox/dcim/migrations/0191_module_bay_rebuild.py
new file mode 100644
index 000000000..260063213
--- /dev/null
+++ b/netbox/dcim/migrations/0191_module_bay_rebuild.py
@@ -0,0 +1,26 @@
+from django.db import migrations
+import mptt
+import mptt.managers
+
+
+def rebuild_mptt(apps, schema_editor):
+ manager = mptt.managers.TreeManager()
+ ModuleBay = apps.get_model('dcim', 'ModuleBay')
+ manager.model = ModuleBay
+ mptt.register(ModuleBay)
+ manager.contribute_to_class(ModuleBay, 'objects')
+ manager.rebuild()
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('dcim', '0190_nested_modules'),
+ ]
+
+ operations = [
+ migrations.RunPython(
+ code=rebuild_mptt,
+ reverse_code=migrations.RunPython.noop
+ ),
+ ]
diff --git a/netbox/dcim/models/device_component_templates.py b/netbox/dcim/models/device_component_templates.py
index 5f6aa08e3..3a71c424d 100644
--- a/netbox/dcim/models/device_component_templates.py
+++ b/netbox/dcim/models/device_component_templates.py
@@ -160,7 +160,6 @@ class ModularComponentTemplateModel(ComponentTemplateModel):
def _get_module_tree(self, module):
modules = []
- all_module_bays = module.device.modulebays.all().select_related('module')
while module:
modules.append(module)
if module.module_bay:
diff --git a/netbox/dcim/models/device_components.py b/netbox/dcim/models/device_components.py
index d25ed261c..f948f5d83 100644
--- a/netbox/dcim/models/device_components.py
+++ b/netbox/dcim/models/device_components.py
@@ -4,7 +4,7 @@ from django.contrib.contenttypes.fields import GenericForeignKey, GenericRelatio
from django.core.exceptions import ValidationError
from django.core.validators import MaxValueValidator, MinValueValidator
from django.db import models
-from django.db.models import F, Sum
+from django.db.models import Sum
from django.urls import reverse
from django.utils.translation import gettext_lazy as _
from mptt.models import MPTTModel, TreeForeignKey
@@ -22,7 +22,6 @@ from utilities.tracking import TrackingModelMixin
from wireless.choices import *
from wireless.utils import get_channel_attr
-
__all__ = (
'BaseInterface',
'CabledObjectModel',
diff --git a/netbox/dcim/search.py b/netbox/dcim/search.py
index 38c1843fe..45431cb05 100644
--- a/netbox/dcim/search.py
+++ b/netbox/dcim/search.py
@@ -250,7 +250,7 @@ class RackTypeIndex(SearchIndex):
('description', 500),
('comments', 5000),
)
- display_attrs = ('type', 'description')
+ display_attrs = ('model', 'description')
@register_search
diff --git a/netbox/dcim/svg/cables.py b/netbox/dcim/svg/cables.py
index 959414d75..4e0f7aea6 100644
--- a/netbox/dcim/svg/cables.py
+++ b/netbox/dcim/svg/cables.py
@@ -162,6 +162,9 @@ class CableTraceSVG:
location_label += f' / {instance.location}'
if instance.rack:
location_label += f' / {instance.rack}'
+ if instance.position:
+ location_label += f' / {instance.get_face_display()}'
+ location_label += f' / U{instance.position}'
labels.append(location_label)
elif instance._meta.model_name == 'circuit':
labels[0] = f'Circuit {instance}'
diff --git a/netbox/dcim/tables/devices.py b/netbox/dcim/tables/devices.py
index 380702b05..b39a2b87f 100644
--- a/netbox/dcim/tables/devices.py
+++ b/netbox/dcim/tables/devices.py
@@ -589,6 +589,9 @@ class BaseInterfaceTable(NetBoxTable):
def value_ip_addresses(self, value):
return ",".join([str(obj.address) for obj in value.all()])
+ def value_tagged_vlans(self, value):
+ return ",".join([str(obj) for obj in value.all()])
+
class InterfaceTable(ModularDeviceComponentTable, BaseInterfaceTable, PathEndpointTable):
device = tables.Column(
diff --git a/netbox/dcim/tables/devicetypes.py b/netbox/dcim/tables/devicetypes.py
index 69ff8b3a2..e8a4e35f1 100644
--- a/netbox/dcim/tables/devicetypes.py
+++ b/netbox/dcim/tables/devicetypes.py
@@ -1,6 +1,5 @@
-from django.utils.translation import gettext_lazy as _
import django_tables2 as tables
-from django.utils.translation import gettext as _
+from django.utils.translation import gettext_lazy as _
from dcim import models
from netbox.tables import NetBoxTable, columns
diff --git a/netbox/dcim/tables/template_code.py b/netbox/dcim/tables/template_code.py
index d3134656c..96ab803e6 100644
--- a/netbox/dcim/tables/template_code.py
+++ b/netbox/dcim/tables/template_code.py
@@ -56,9 +56,13 @@ INTERFACE_FHRPGROUPS = """
INTERFACE_TAGGED_VLANS = """
{% if record.mode == 'tagged' %}
+ {% if value.count > 3 %}
+ {{ value.count }} VLANs
+ {% else %}
{% for vlan in value.all %}
{{ vlan }}
{% endfor %}
+ {% endif %}
{% elif record.mode == 'tagged-all' %}
All
{% endif %}
diff --git a/netbox/dcim/tests/test_api.py b/netbox/dcim/tests/test_api.py
index 573fdbb96..1b460cd59 100644
--- a/netbox/dcim/tests/test_api.py
+++ b/netbox/dcim/tests/test_api.py
@@ -2135,12 +2135,12 @@ class ConnectedDeviceTest(APITestCase):
def test_get_connected_device(self):
url = reverse('dcim-api:connected-device-list')
- url_params = f'?peer_device=TestDevice1&peer_interface=eth0'
+ url_params = '?peer_device=TestDevice1&peer_interface=eth0'
response = self.client.get(url + url_params, **self.header)
self.assertHttpStatus(response, status.HTTP_200_OK)
self.assertEqual(response.data['name'], 'TestDevice2')
- url_params = f'?peer_device=TestDevice1&peer_interface=eth1'
+ url_params = '?peer_device=TestDevice1&peer_interface=eth1'
response = self.client.get(url + url_params, **self.header)
self.assertHttpStatus(response, status.HTTP_404_NOT_FOUND)
diff --git a/netbox/dcim/tests/test_filtersets.py b/netbox/dcim/tests/test_filtersets.py
index cbc31e8d4..ae738b57f 100644
--- a/netbox/dcim/tests/test_filtersets.py
+++ b/netbox/dcim/tests/test_filtersets.py
@@ -4842,13 +4842,6 @@ class InventoryItemTestCase(TestCase, ChangeLoggedFilterSetTests):
params = {'device_role': [role[0].slug, role[1].slug]}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 4)
- def test_role(self):
- role = DeviceRole.objects.all()[:2]
- params = {'role_id': [role[0].pk, role[1].pk]}
- self.assertEqual(self.filterset(params, self.queryset).qs.count(), 4)
- params = {'role': [role[0].slug, role[1].slug]}
- self.assertEqual(self.filterset(params, self.queryset).qs.count(), 4)
-
def test_device(self):
devices = Device.objects.all()[:2]
params = {'device_id': [devices[0].pk, devices[1].pk]}
diff --git a/netbox/dcim/tests/test_models.py b/netbox/dcim/tests/test_models.py
index f183eccb3..c11badbdd 100644
--- a/netbox/dcim/tests/test_models.py
+++ b/netbox/dcim/tests/test_models.py
@@ -663,10 +663,8 @@ class ModuleBayTestCase(TestCase):
def test_module_bay_recursion(self):
module_bay_1 = ModuleBay.objects.get(name='Module Bay 1')
- module_bay_2 = ModuleBay.objects.get(name='Module Bay 2')
module_bay_3 = ModuleBay.objects.get(name='Module Bay 3')
module_1 = Module.objects.get(module_bay=module_bay_1)
- module_2 = Module.objects.get(module_bay=module_bay_2)
module_3 = Module.objects.get(module_bay=module_bay_3)
# Confirm error if ModuleBay recurses
@@ -682,8 +680,6 @@ class ModuleBayTestCase(TestCase):
module_1.save()
def test_single_module_token(self):
- module_bays = ModuleBay.objects.all()
- modules = Module.objects.all()
device_type = DeviceType.objects.first()
device_role = DeviceRole.objects.first()
site = Site.objects.first()
@@ -709,7 +705,7 @@ class ModuleBayTestCase(TestCase):
location=location,
rack=rack
)
- cp = device.consoleports.first()
+ device.consoleports.first()
def test_nested_module_token(self):
pass
@@ -734,39 +730,41 @@ class CableTestCase(TestCase):
device2 = Device.objects.create(
device_type=devicetype, role=role, name='TestDevice2', site=site
)
- interface1 = Interface.objects.create(device=device1, name='eth0')
- interface2 = Interface.objects.create(device=device2, name='eth0')
- interface3 = Interface.objects.create(device=device2, name='eth1')
- Cable(a_terminations=[interface1], b_terminations=[interface2]).save()
+ interfaces = (
+ Interface(device=device1, name='eth0'),
+ Interface(device=device2, name='eth0'),
+ Interface(device=device2, name='eth1'),
+ )
+ Interface.objects.bulk_create(interfaces)
+ Cable(a_terminations=[interfaces[0]], b_terminations=[interfaces[1]]).save()
+ PowerPort.objects.create(device=device2, name='psu1')
- power_port1 = PowerPort.objects.create(device=device2, name='psu1')
- patch_pannel = Device.objects.create(
+ patch_panel = Device.objects.create(
device_type=devicetype, role=role, name='TestPatchPanel', site=site
)
- rear_port1 = RearPort.objects.create(device=patch_pannel, name='RP1', type='8p8c')
- front_port1 = FrontPort.objects.create(
- device=patch_pannel, name='FP1', type='8p8c', rear_port=rear_port1, rear_port_position=1
+ rear_ports = (
+ RearPort(device=patch_panel, name='RP1', type='8p8c'),
+ RearPort(device=patch_panel, name='RP2', type='8p8c', positions=2),
+ RearPort(device=patch_panel, name='RP3', type='8p8c', positions=3),
+ RearPort(device=patch_panel, name='RP4', type='8p8c', positions=3),
)
- rear_port2 = RearPort.objects.create(device=patch_pannel, name='RP2', type='8p8c', positions=2)
- front_port2 = FrontPort.objects.create(
- device=patch_pannel, name='FP2', type='8p8c', rear_port=rear_port2, rear_port_position=1
- )
- rear_port3 = RearPort.objects.create(device=patch_pannel, name='RP3', type='8p8c', positions=3)
- front_port3 = FrontPort.objects.create(
- device=patch_pannel, name='FP3', type='8p8c', rear_port=rear_port3, rear_port_position=1
- )
- rear_port4 = RearPort.objects.create(device=patch_pannel, name='RP4', type='8p8c', positions=3)
- front_port4 = FrontPort.objects.create(
- device=patch_pannel, name='FP4', type='8p8c', rear_port=rear_port4, rear_port_position=1
+ RearPort.objects.bulk_create(rear_ports)
+ front_ports = (
+ FrontPort(device=patch_panel, name='FP1', type='8p8c', rear_port=rear_ports[0], rear_port_position=1),
+ FrontPort(device=patch_panel, name='FP2', type='8p8c', rear_port=rear_ports[1], rear_port_position=1),
+ FrontPort(device=patch_panel, name='FP3', type='8p8c', rear_port=rear_ports[2], rear_port_position=1),
+ FrontPort(device=patch_panel, name='FP4', type='8p8c', rear_port=rear_ports[3], rear_port_position=1),
)
+ FrontPort.objects.bulk_create(front_ports)
+
provider = Provider.objects.create(name='Provider 1', slug='provider-1')
provider_network = ProviderNetwork.objects.create(name='Provider Network 1', provider=provider)
circuittype = CircuitType.objects.create(name='Circuit Type 1', slug='circuit-type-1')
circuit1 = Circuit.objects.create(provider=provider, type=circuittype, cid='1')
circuit2 = Circuit.objects.create(provider=provider, type=circuittype, cid='2')
- circuittermination1 = CircuitTermination.objects.create(circuit=circuit1, site=site, term_side='A')
- circuittermination2 = CircuitTermination.objects.create(circuit=circuit1, site=site, term_side='Z')
- circuittermination3 = CircuitTermination.objects.create(circuit=circuit2, provider_network=provider_network, term_side='A')
+ CircuitTermination.objects.create(circuit=circuit1, site=site, term_side='A')
+ CircuitTermination.objects.create(circuit=circuit1, site=site, term_side='Z')
+ CircuitTermination.objects.create(circuit=circuit2, provider_network=provider_network, term_side='A')
def test_cable_creation(self):
"""
diff --git a/netbox/dcim/tests/test_views.py b/netbox/dcim/tests/test_views.py
index 0f89efb65..ca0db5588 100644
--- a/netbox/dcim/tests/test_views.py
+++ b/netbox/dcim/tests/test_views.py
@@ -2571,7 +2571,7 @@ class InterfaceTestCase(ViewTestCases.DeviceComponentViewTestCase):
}
cls.csv_data = (
- f"device,name,type,vrf.pk,poe_mode,poe_type",
+ "device,name,type,vrf.pk,poe_mode,poe_type",
f"Device 1,Interface 4,1000base-t,{vrfs[0].pk},pse,type1-ieee802.3af",
f"Device 1,Interface 5,1000base-t,{vrfs[0].pk},pse,type1-ieee802.3af",
f"Device 1,Interface 6,1000base-t,{vrfs[0].pk},pse,type1-ieee802.3af",
diff --git a/netbox/dcim/utils.py b/netbox/dcim/utils.py
index eadd2da96..4d4228490 100644
--- a/netbox/dcim/utils.py
+++ b/netbox/dcim/utils.py
@@ -1,5 +1,3 @@
-import itertools
-
from django.contrib.contenttypes.models import ContentType
from django.db import transaction
diff --git a/netbox/extras/api/nested_serializers.py b/netbox/extras/api/nested_serializers.py
index ba291b34e..235cdd6d6 100644
--- a/netbox/extras/api/nested_serializers.py
+++ b/netbox/extras/api/nested_serializers.py
@@ -24,7 +24,7 @@ __all__ = [
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/extras/api/serializers_/configtemplates.py b/netbox/extras/api/serializers_/configtemplates.py
index 30d2fb468..c4a683c74 100644
--- a/netbox/extras/api/serializers_/configtemplates.py
+++ b/netbox/extras/api/serializers_/configtemplates.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from core.api.serializers_.data import DataFileSerializer, DataSourceSerializer
from extras.models import ConfigTemplate
from netbox.api.serializers import ValidatedModelSerializer
diff --git a/netbox/extras/api/serializers_/customlinks.py b/netbox/extras/api/serializers_/customlinks.py
index 6391e0471..8cc4f5f77 100644
--- a/netbox/extras/api/serializers_/customlinks.py
+++ b/netbox/extras/api/serializers_/customlinks.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from core.models import ObjectType
from extras.models import CustomLink
from netbox.api.fields import ContentTypeField
diff --git a/netbox/extras/api/serializers_/exporttemplates.py b/netbox/extras/api/serializers_/exporttemplates.py
index faef9bb9e..11f502a02 100644
--- a/netbox/extras/api/serializers_/exporttemplates.py
+++ b/netbox/extras/api/serializers_/exporttemplates.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from core.api.serializers_.data import DataFileSerializer, DataSourceSerializer
from core.models import ObjectType
from extras.models import ExportTemplate
diff --git a/netbox/extras/api/serializers_/savedfilters.py b/netbox/extras/api/serializers_/savedfilters.py
index 140303797..fb0744e59 100644
--- a/netbox/extras/api/serializers_/savedfilters.py
+++ b/netbox/extras/api/serializers_/savedfilters.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from core.models import ObjectType
from extras.models import SavedFilter
from netbox.api.fields import ContentTypeField
diff --git a/netbox/extras/api/serializers_/tags.py b/netbox/extras/api/serializers_/tags.py
index 946ed3c8a..e4e62845a 100644
--- a/netbox/extras/api/serializers_/tags.py
+++ b/netbox/extras/api/serializers_/tags.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from core.models import ObjectType
from extras.models import Tag
from netbox.api.fields import ContentTypeField, RelatedObjectCountField
diff --git a/netbox/extras/api/views.py b/netbox/extras/api/views.py
index cf2cab316..e4c3c7f3e 100644
--- a/netbox/extras/api/views.py
+++ b/netbox/extras/api/views.py
@@ -1,6 +1,5 @@
from django.http import Http404
from django.shortcuts import get_object_or_404
-from django.utils.module_loading import import_string
from django_rq.queues import get_connection
from drf_spectacular.utils import extend_schema, extend_schema_view
from rest_framework import status
@@ -15,8 +14,8 @@ from rq import Worker
from core.models import ObjectType
from extras import filtersets
-from extras.models import *
from extras.jobs import ScriptJob
+from extras.models import *
from netbox.api.authentication import IsAuthenticatedOrLoginNotRequired
from netbox.api.features import SyncedDataMixin
from netbox.api.metadata import ContentTypeMetadata
diff --git a/netbox/extras/apps.py b/netbox/extras/apps.py
index c565988bc..21232f95f 100644
--- a/netbox/extras/apps.py
+++ b/netbox/extras/apps.py
@@ -6,7 +6,7 @@ class ExtrasConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
- from . import dashboard, lookups, search, signals
+ from . import dashboard, lookups, search, signals # noqa: F401
# Register models
register_models(*self.get_models())
diff --git a/netbox/extras/dashboard/widgets.py b/netbox/extras/dashboard/widgets.py
index 091819bd1..c56e4cd7d 100644
--- a/netbox/extras/dashboard/widgets.py
+++ b/netbox/extras/dashboard/widgets.py
@@ -15,7 +15,6 @@ from django.utils.translation import gettext as _
from core.models import ObjectType
from extras.choices import BookmarkOrderingChoices
-from netbox.choices import ButtonColorChoices
from utilities.object_types import object_type_identifier, object_type_name
from utilities.permissions import get_permission_for_model
from utilities.querydict import dict_to_querydict
diff --git a/netbox/extras/graphql/types.py b/netbox/extras/graphql/types.py
index a43f80cc3..a53c7bed3 100644
--- a/netbox/extras/graphql/types.py
+++ b/netbox/extras/graphql/types.py
@@ -84,7 +84,7 @@ class CustomFieldType(ObjectType):
class CustomFieldChoiceSetType(ObjectType):
choices_for: List[Annotated["CustomFieldType", strawberry.lazy('extras.graphql.types')]]
- extra_choices: List[str] | None
+ extra_choices: List[List[str]] | None
@strawberry_django.type(
diff --git a/netbox/extras/jobs.py b/netbox/extras/jobs.py
index e540ef439..64a7d6a69 100644
--- a/netbox/extras/jobs.py
+++ b/netbox/extras/jobs.py
@@ -48,7 +48,7 @@ class ScriptJob(JobRunner):
except AbortTransaction:
script.log_info(message=_("Database changes have been reverted automatically."))
if script.failed:
- logger.warning(f"Script failed")
+ logger.warning("Script failed")
raise
except Exception as e:
diff --git a/netbox/extras/lookups.py b/netbox/extras/lookups.py
index a8d89c943..c496cce78 100644
--- a/netbox/extras/lookups.py
+++ b/netbox/extras/lookups.py
@@ -1,4 +1,5 @@
-from django.db.models import CharField, TextField, Lookup
+from django.db.models import CharField, Lookup
+
from .fields import CachedValueField
diff --git a/netbox/extras/management/commands/housekeeping.py b/netbox/extras/management/commands/housekeeping.py
index cb8137ee2..ade486fc0 100644
--- a/netbox/extras/management/commands/housekeeping.py
+++ b/netbox/extras/management/commands/housekeeping.py
@@ -95,7 +95,7 @@ class Command(BaseCommand):
self.stdout.write("[*] Checking for latest release")
if settings.ISOLATED_DEPLOYMENT:
if options['verbosity']:
- self.stdout.write(f"\tSkipping: ISOLATED_DEPLOYMENT is enabled")
+ self.stdout.write("\tSkipping: ISOLATED_DEPLOYMENT is enabled")
elif settings.RELEASE_CHECK_URL:
headers = {
'Accept': 'application/vnd.github.v3+json',
@@ -129,7 +129,7 @@ class Command(BaseCommand):
self.stdout.write(f"\tRequest error: {exc}", self.style.ERROR)
else:
if options['verbosity']:
- self.stdout.write(f"\tSkipping: RELEASE_CHECK_URL not set")
+ self.stdout.write("\tSkipping: RELEASE_CHECK_URL not set")
if options['verbosity']:
self.stdout.write("Finished.", self.style.SUCCESS)
diff --git a/netbox/extras/management/commands/reindex.py b/netbox/extras/management/commands/reindex.py
index 5aab74511..21442be93 100644
--- a/netbox/extras/management/commands/reindex.py
+++ b/netbox/extras/management/commands/reindex.py
@@ -96,9 +96,9 @@ class Command(BaseCommand):
if i:
self.stdout.write(f'{i} entries cached.')
else:
- self.stdout.write(f'No objects found.')
+ self.stdout.write('No objects found.')
- msg = f'Completed.'
+ msg = 'Completed.'
if total_count := search_backend.size:
msg += f' Total entries: {total_count}'
self.stdout.write(msg, self.style.SUCCESS)
diff --git a/netbox/extras/management/commands/runscript.py b/netbox/extras/management/commands/runscript.py
index ab0d6d894..d5fb435ad 100644
--- a/netbox/extras/management/commands/runscript.py
+++ b/netbox/extras/management/commands/runscript.py
@@ -51,7 +51,7 @@ class Command(BaseCommand):
user = User.objects.filter(is_superuser=True).order_by('pk')[0]
# Setup logging to Stdout
- formatter = logging.Formatter(f'[%(asctime)s][%(levelname)s] - %(message)s')
+ formatter = logging.Formatter('[%(asctime)s][%(levelname)s] - %(message)s')
stdouthandler = logging.StreamHandler(sys.stdout)
stdouthandler.setLevel(logging.DEBUG)
stdouthandler.setFormatter(formatter)
diff --git a/netbox/extras/models/customfields.py b/netbox/extras/models/customfields.py
index 889594902..8b7fc0cb6 100644
--- a/netbox/extras/models/customfields.py
+++ b/netbox/extras/models/customfields.py
@@ -283,7 +283,7 @@ class CustomField(CloningMixin, ExportTemplatesMixin, ChangeLoggedModel):
"""
for ct in content_types:
model = ct.model_class()
- instances = model.objects.exclude(**{f'custom_field_data__contains': self.name})
+ instances = model.objects.exclude(**{'custom_field_data__contains': self.name})
for instance in instances:
instance.custom_field_data[self.name] = self.default
model.objects.bulk_update(instances, ['custom_field_data'], batch_size=100)
@@ -661,7 +661,7 @@ class CustomField(CloningMixin, ExportTemplatesMixin, ChangeLoggedModel):
raise ValidationError(_("Value must be an integer."))
if self.validation_minimum is not None and value < self.validation_minimum:
raise ValidationError(
- _("Value must be at least {minimum}").format(minimum=self.validation_maximum)
+ _("Value must be at least {minimum}").format(minimum=self.validation_minimum)
)
if self.validation_maximum is not None and value > self.validation_maximum:
raise ValidationError(
@@ -785,6 +785,12 @@ class CustomFieldChoiceSet(CloningMixin, ExportTemplatesMixin, ChangeLoggedModel
def __str__(self):
return self.name
+ def __init__(self, *args, **kwargs):
+ super().__init__(*args, **kwargs)
+
+ # Cache the initial set of choices for comparison under clean()
+ self._original_extra_choices = self.__dict__.get('extra_choices')
+
def get_absolute_url(self):
return reverse('extras:customfieldchoiceset', args=[self.pk])
@@ -818,6 +824,32 @@ class CustomFieldChoiceSet(CloningMixin, ExportTemplatesMixin, ChangeLoggedModel
if not self.base_choices and not self.extra_choices:
raise ValidationError(_("Must define base or extra choices."))
+ # Check whether any choices have been removed. If so, check whether any of the removed
+ # choices are still set in custom field data for any object.
+ original_choices = set([
+ c[0] for c in self._original_extra_choices
+ ]) if self._original_extra_choices else set()
+ current_choices = set([
+ c[0] for c in self.extra_choices
+ ]) if self.extra_choices else set()
+ if removed_choices := original_choices - current_choices:
+ for custom_field in self.choices_for.all():
+ for object_type in custom_field.object_types.all():
+ model = object_type.model_class()
+ for choice in removed_choices:
+ # Form the query based on the type of custom field
+ if custom_field.type == CustomFieldTypeChoices.TYPE_MULTISELECT:
+ query_args = {f"custom_field_data__{custom_field.name}__contains": choice}
+ else:
+ query_args = {f"custom_field_data__{custom_field.name}": choice}
+ # Raise a ValidationError if there are any objects which still reference the removed choice
+ if model.objects.filter(models.Q(**query_args)).exists():
+ raise ValidationError(
+ _(
+ "Cannot remove choice {choice} as there are {model} objects which reference it."
+ ).format(choice=choice, model=object_type)
+ )
+
def save(self, *args, **kwargs):
# Sort choices if alphabetical ordering is enforced
diff --git a/netbox/extras/scripts.py b/netbox/extras/scripts.py
index 96d08d8af..f2bd75a1d 100644
--- a/netbox/extras/scripts.py
+++ b/netbox/extras/scripts.py
@@ -554,7 +554,7 @@ class BaseScript:
"""
Run the report and save its results. Each test method will be executed in order.
"""
- self.logger.info(f"Running report")
+ self.logger.info("Running report")
try:
for test_name in self.tests:
diff --git a/netbox/extras/tests/test_api.py b/netbox/extras/tests/test_api.py
index 5defbd0bd..63baf44d3 100644
--- a/netbox/extras/tests/test_api.py
+++ b/netbox/extras/tests/test_api.py
@@ -12,7 +12,6 @@ from dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Rack, Loca
from extras.choices import *
from extras.models import *
from extras.scripts import BooleanVar, IntegerVar, Script as PythonClass, StringVar
-from netbox.events import *
from users.models import Group, User
from utilities.testing import APITestCase, APIViewTestCases
@@ -244,9 +243,18 @@ class CustomFieldChoiceSetTest(APIViewTestCases.APIViewTestCase):
@classmethod
def setUpTestData(cls):
choice_sets = (
- CustomFieldChoiceSet(name='Choice Set 1', extra_choices=['1A', '1B', '1C', '1D', '1E']),
- CustomFieldChoiceSet(name='Choice Set 2', extra_choices=['2A', '2B', '2C', '2D', '2E']),
- CustomFieldChoiceSet(name='Choice Set 3', extra_choices=['3A', '3B', '3C', '3D', '3E']),
+ CustomFieldChoiceSet(
+ name='Choice Set 1',
+ extra_choices=[['1A', '1A'], ['1B', '1B'], ['1C', '1C'], ['1D', '1D'], ['1E', '1E']],
+ ),
+ CustomFieldChoiceSet(
+ name='Choice Set 2',
+ extra_choices=[['2A', '2A'], ['2B', '2B'], ['2C', '2C'], ['2D', '2D'], ['2E', '2E']],
+ ),
+ CustomFieldChoiceSet(
+ name='Choice Set 3',
+ extra_choices=[['3A', '3A'], ['3B', '3B'], ['3C', '3C'], ['3D', '3D'], ['3E', '3E']],
+ ),
)
CustomFieldChoiceSet.objects.bulk_create(choice_sets)
@@ -784,7 +792,6 @@ class ScriptTest(APITestCase):
super().setUp()
# Monkey-patch the Script model to return our TestScriptClass above
- from extras.api.views import ScriptViewSet
Script.python_class = self.python_class
def test_get_script(self):
diff --git a/netbox/extras/tests/test_customfields.py b/netbox/extras/tests/test_customfields.py
index 697b756ec..2bc9b5acc 100644
--- a/netbox/extras/tests/test_customfields.py
+++ b/netbox/extras/tests/test_customfields.py
@@ -343,6 +343,74 @@ class CustomFieldTest(TestCase):
instance.refresh_from_db()
self.assertIsNone(instance.custom_field_data.get(cf.name))
+ def test_remove_selected_choice(self):
+ """
+ Removing a ChoiceSet choice that is referenced by an object should raise
+ a ValidationError exception.
+ """
+ CHOICES = (
+ ('a', 'Option A'),
+ ('b', 'Option B'),
+ ('c', 'Option C'),
+ ('d', 'Option D'),
+ )
+
+ # Create a set of custom field choices
+ choice_set = CustomFieldChoiceSet.objects.create(
+ name='Custom Field Choice Set 1',
+ extra_choices=CHOICES
+ )
+
+ # Create a select custom field
+ cf = CustomField.objects.create(
+ name='select_field',
+ type=CustomFieldTypeChoices.TYPE_SELECT,
+ required=False,
+ choice_set=choice_set
+ )
+ cf.object_types.set([self.object_type])
+
+ # Create a multi-select custom field
+ cf_multiselect = CustomField.objects.create(
+ name='multiselect_field',
+ type=CustomFieldTypeChoices.TYPE_MULTISELECT,
+ required=False,
+ choice_set=choice_set
+ )
+ cf_multiselect.object_types.set([self.object_type])
+
+ # Assign a choice for both custom fields on an object
+ instance = Site.objects.first()
+ instance.custom_field_data[cf.name] = 'a'
+ instance.custom_field_data[cf_multiselect.name] = ['b', 'c']
+ instance.save()
+
+ # Attempting to delete a selected choice should fail
+ with self.assertRaises(ValidationError):
+ choice_set.extra_choices = (
+ ('b', 'Option B'),
+ ('c', 'Option C'),
+ ('d', 'Option D'),
+ )
+ choice_set.full_clean()
+
+ # Attempting to delete either of the multi-select choices should fail
+ with self.assertRaises(ValidationError):
+ choice_set.extra_choices = (
+ ('a', 'Option A'),
+ ('b', 'Option B'),
+ ('d', 'Option D'),
+ )
+ choice_set.full_clean()
+
+ # Removing a non-selected choice should succeed
+ choice_set.extra_choices = (
+ ('a', 'Option A'),
+ ('b', 'Option B'),
+ ('c', 'Option C'),
+ )
+ choice_set.full_clean()
+
def test_object_field(self):
value = VLAN.objects.create(name='VLAN 1', vid=1).pk
diff --git a/netbox/extras/tests/test_customvalidators.py b/netbox/extras/tests/test_customvalidators.py
index 49deb9da5..9f85b4913 100644
--- a/netbox/extras/tests/test_customvalidators.py
+++ b/netbox/extras/tests/test_customvalidators.py
@@ -162,7 +162,7 @@ class CustomValidatorTest(TestCase):
Site(name='abcdef123', slug='abcdef123').clean()
@override_settings(CUSTOM_VALIDATORS={'dcim.site': [region_validator]})
- def test_valid(self):
+ def test_related_object(self):
region1 = Region(name='Foo', slug='foo')
region1.save()
region2 = Region(name='Bar', slug='bar')
diff --git a/netbox/extras/tests/test_models.py b/netbox/extras/tests/test_models.py
index c92a1bc54..188a06a3f 100644
--- a/netbox/extras/tests/test_models.py
+++ b/netbox/extras/tests/test_models.py
@@ -49,11 +49,11 @@ class ConfigContextTest(TestCase):
sitegroup = SiteGroup.objects.create(name='Site Group')
site = Site.objects.create(name='Site 1', slug='site-1', region=region, group=sitegroup)
location = Location.objects.create(name='Location 1', slug='location-1', site=site)
- platform = Platform.objects.create(name='Platform')
+ Platform.objects.create(name='Platform')
tenantgroup = TenantGroup.objects.create(name='Tenant Group')
- tenant = Tenant.objects.create(name='Tenant', group=tenantgroup)
- tag1 = Tag.objects.create(name='Tag', slug='tag')
- tag2 = Tag.objects.create(name='Tag2', slug='tag2')
+ Tenant.objects.create(name='Tenant', group=tenantgroup)
+ Tag.objects.create(name='Tag', slug='tag')
+ Tag.objects.create(name='Tag2', slug='tag2')
Device.objects.create(
name='Device 1',
diff --git a/netbox/extras/tests/test_views.py b/netbox/extras/tests/test_views.py
index 796d36180..5d82fae4c 100644
--- a/netbox/extras/tests/test_views.py
+++ b/netbox/extras/tests/test_views.py
@@ -417,7 +417,7 @@ class EventRulesTestCase(ViewTestCases.PrimaryObjectViewTestCase):
}
cls.csv_data = (
- f'name,object_types,event_types,action_type,action_object',
+ 'name,object_types,event_types,action_type,action_object',
f'Webhook 4,dcim.site,"{OBJECT_CREATED},{OBJECT_UPDATED}",webhook,Webhook 1',
)
diff --git a/netbox/extras/validators.py b/netbox/extras/validators.py
index 6823c1978..306acf01b 100644
--- a/netbox/extras/validators.py
+++ b/netbox/extras/validators.py
@@ -1,4 +1,3 @@
-import inspect
import operator
from django.core import validators
diff --git a/netbox/extras/views.py b/netbox/extras/views.py
index b3d942fd8..321842260 100644
--- a/netbox/extras/views.py
+++ b/netbox/extras/views.py
@@ -6,8 +6,8 @@ from django.db.models import Count, Q
from django.http import HttpResponseBadRequest, HttpResponseForbidden, HttpResponse
from django.shortcuts import get_object_or_404, redirect, render
from django.urls import reverse
-from django.utils.module_loading import import_string
from django.utils import timezone
+from django.utils.module_loading import import_string
from django.utils.translation import gettext as _
from django.views.generic import View
@@ -20,7 +20,6 @@ from extras.choices import LogLevelChoices
from extras.dashboard.forms import DashboardWidgetAddForm, DashboardWidgetForm
from extras.dashboard.utils import get_widget_class
from netbox.constants import DEFAULT_ACTION_PERMISSIONS
-from netbox.registry import registry
from netbox.views import generic
from netbox.views.generic.mixins import TableMixin
from utilities.forms import ConfirmationForm, get_field_value
diff --git a/netbox/ipam/api/nested_serializers.py b/netbox/ipam/api/nested_serializers.py
index 57a1a65d5..8b10f29df 100644
--- a/netbox/ipam/api/nested_serializers.py
+++ b/netbox/ipam/api/nested_serializers.py
@@ -30,7 +30,7 @@ __all__ = [
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/ipam/api/serializers_/roles.py b/netbox/ipam/api/serializers_/roles.py
index 9a97a8570..99fd6f470 100644
--- a/netbox/ipam/api/serializers_/roles.py
+++ b/netbox/ipam/api/serializers_/roles.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from ipam.models import Role
from netbox.api.fields import RelatedObjectCountField
from netbox.api.serializers import NetBoxModelSerializer
diff --git a/netbox/ipam/api/serializers_/services.py b/netbox/ipam/api/serializers_/services.py
index e0b2014f6..61b330d01 100644
--- a/netbox/ipam/api/serializers_/services.py
+++ b/netbox/ipam/api/serializers_/services.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from dcim.api.serializers_.devices import DeviceSerializer
from ipam.choices import *
from ipam.models import IPAddress, Service, ServiceTemplate
diff --git a/netbox/ipam/api/serializers_/vrfs.py b/netbox/ipam/api/serializers_/vrfs.py
index ad54dc095..a23909108 100644
--- a/netbox/ipam/api/serializers_/vrfs.py
+++ b/netbox/ipam/api/serializers_/vrfs.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from ipam.models import RouteTarget, VRF
from netbox.api.fields import RelatedObjectCountField, SerializedPKRelatedField
from netbox.api.serializers import NetBoxModelSerializer
diff --git a/netbox/ipam/api/views.py b/netbox/ipam/api/views.py
index cac90bb87..ffd4d5b7d 100644
--- a/netbox/ipam/api/views.py
+++ b/netbox/ipam/api/views.py
@@ -186,13 +186,13 @@ class AvailableObjectsView(ObjectValidationMixin, APIView):
"""
Return the parent object.
"""
- raise NotImplemented()
+ raise NotImplementedError()
def get_available_objects(self, parent, limit=None):
"""
Return all available objects for the parent.
"""
- raise NotImplemented()
+ raise NotImplementedError()
def get_extra_context(self, parent):
"""
@@ -250,7 +250,7 @@ class AvailableObjectsView(ObjectValidationMixin, APIView):
# Determine if the requested number of objects is available
if not self.check_sufficient_available(serializer.validated_data, available_objects):
return Response(
- {"detail": f"Insufficient resources are available to satisfy the request"},
+ {"detail": "Insufficient resources are available to satisfy the request"},
status=status.HTTP_409_CONFLICT
)
diff --git a/netbox/ipam/apps.py b/netbox/ipam/apps.py
index 244ec7d6d..c118d5464 100644
--- a/netbox/ipam/apps.py
+++ b/netbox/ipam/apps.py
@@ -7,7 +7,7 @@ class IPAMConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
- from . import signals, search
+ from . import signals, search # noqa: F401
# Register models
register_models(*self.get_models())
diff --git a/netbox/ipam/filtersets.py b/netbox/ipam/filtersets.py
index f98f510e5..894219c64 100644
--- a/netbox/ipam/filtersets.py
+++ b/netbox/ipam/filtersets.py
@@ -1035,6 +1035,16 @@ class VLANFilterSet(NetBoxModelFilterSet, TenancyFilterSet):
to_field_name='identifier',
label=_('L2VPN'),
)
+ interface_id = django_filters.ModelChoiceFilter(
+ queryset=Interface.objects.all(),
+ method='filter_interface_id',
+ label=_('Assigned interface')
+ )
+ vminterface_id = django_filters.ModelChoiceFilter(
+ queryset=VMInterface.objects.all(),
+ method='filter_vminterface_id',
+ label=_('Assigned VM interface')
+ )
class Meta:
model = VLAN
@@ -1062,6 +1072,22 @@ class VLANFilterSet(NetBoxModelFilterSet, TenancyFilterSet):
def get_for_virtualmachine(self, queryset, name, value):
return queryset.get_for_virtualmachine(value)
+ def filter_interface_id(self, queryset, name, value):
+ if value is None:
+ return queryset.none()
+ return queryset.filter(
+ Q(interfaces_as_tagged=value) |
+ Q(interfaces_as_untagged=value)
+ )
+
+ def filter_vminterface_id(self, queryset, name, value):
+ if value is None:
+ return queryset.none()
+ return queryset.filter(
+ Q(vminterfaces_as_tagged=value) |
+ Q(vminterfaces_as_untagged=value)
+ )
+
class ServiceTemplateFilterSet(NetBoxModelFilterSet):
port = NumericArrayFilter(
diff --git a/netbox/ipam/graphql/mixins.py b/netbox/ipam/graphql/mixins.py
index 73cc60ec4..692741871 100644
--- a/netbox/ipam/graphql/mixins.py
+++ b/netbox/ipam/graphql/mixins.py
@@ -1,7 +1,6 @@
from typing import Annotated, List
import strawberry
-import strawberry_django
__all__ = (
'IPAddressesMixin',
@@ -11,9 +10,9 @@ __all__ = (
@strawberry.type
class IPAddressesMixin:
- ip_addresses: List[Annotated["IPAddressType", strawberry.lazy('ipam.graphql.types')]]
+ ip_addresses: List[Annotated["IPAddressType", strawberry.lazy('ipam.graphql.types')]] # noqa: F821
@strawberry.type
class VLANGroupsMixin:
- vlan_groups: List[Annotated["VLANGroupType", strawberry.lazy('ipam.graphql.types')]]
+ vlan_groups: List[Annotated["VLANGroupType", strawberry.lazy('ipam.graphql.types')]] # noqa: F821
diff --git a/netbox/ipam/tables/ip.py b/netbox/ipam/tables/ip.py
index 4152efefb..8ec7a5967 100644
--- a/netbox/ipam/tables/ip.py
+++ b/netbox/ipam/tables/ip.py
@@ -51,7 +51,7 @@ IPADDRESS_LINK = """
{% if record.pk %}
{{ record.address }}
{% elif perms.ipam.add_ipaddress %}
- {% if record.0 <= 65536 %}{{ record.0 }}{% else %}Many{% endif %} IP{{ record.0|pluralize }} available
+ {% if record.0 <= 65536 %}{{ record.0 }}{% else %}Many{% endif %} IP{{ record.0|pluralize }} available
{% else %}
{% if record.0 <= 65536 %}{{ record.0 }}{% else %}Many{% endif %} IP{{ record.0|pluralize }} available
{% endif %}
diff --git a/netbox/ipam/tests/test_api.py b/netbox/ipam/tests/test_api.py
index 59335cbbe..1d2cdf1b7 100644
--- a/netbox/ipam/tests/test_api.py
+++ b/netbox/ipam/tests/test_api.py
@@ -700,8 +700,6 @@ class IPAddressTest(APIViewTestCases.APIViewTestCase):
device1.primary_ip4 = ip_addresses[0]
device1.save()
- ip2 = ip_addresses[1]
-
url = reverse('ipam-api:ipaddress-detail', kwargs={'pk': ip1.pk})
self.add_permissions('ipam.change_ipaddress')
diff --git a/netbox/ipam/tests/test_filtersets.py b/netbox/ipam/tests/test_filtersets.py
index e149c0a8d..4e38b1450 100644
--- a/netbox/ipam/tests/test_filtersets.py
+++ b/netbox/ipam/tests/test_filtersets.py
@@ -1658,6 +1658,13 @@ class VLANTestCase(TestCase, ChangeLoggedFilterSetTests):
)
Device.objects.bulk_create(devices)
+ interfaces = (
+ Interface(device=devices[0], name='Interface 1', type=InterfaceTypeChoices.TYPE_1GE_FIXED),
+ Interface(device=devices[1], name='Interface 2', type=InterfaceTypeChoices.TYPE_1GE_FIXED),
+ Interface(device=devices[2], name='Interface 3', type=InterfaceTypeChoices.TYPE_1GE_FIXED),
+ )
+ Interface.objects.bulk_create(interfaces)
+
cluster_groups = (
ClusterGroup(name='Cluster Group 1', slug='cluster-group-1'),
ClusterGroup(name='Cluster Group 2', slug='cluster-group-2'),
@@ -1680,6 +1687,13 @@ class VLANTestCase(TestCase, ChangeLoggedFilterSetTests):
)
VirtualMachine.objects.bulk_create(virtual_machines)
+ vm_interfaces = (
+ VMInterface(virtual_machine=virtual_machines[0], name='VM Interface 1'),
+ VMInterface(virtual_machine=virtual_machines[1], name='VM Interface 2'),
+ VMInterface(virtual_machine=virtual_machines[2], name='VM Interface 3'),
+ )
+ VMInterface.objects.bulk_create(vm_interfaces)
+
groups = (
# Scoped VLAN groups
VLANGroup(name='Region 1', slug='region-1', scope=regions[0]),
@@ -1773,6 +1787,22 @@ class VLANTestCase(TestCase, ChangeLoggedFilterSetTests):
)
VLAN.objects.bulk_create(vlans)
+ # Assign VLANs to device interfaces
+ interfaces[0].untagged_vlan = vlans[0]
+ interfaces[0].tagged_vlans.add(vlans[1])
+ interfaces[1].untagged_vlan = vlans[2]
+ interfaces[1].tagged_vlans.add(vlans[3])
+ interfaces[2].untagged_vlan = vlans[4]
+ interfaces[2].tagged_vlans.add(vlans[5])
+
+ # Assign VLANs to VM interfaces
+ vm_interfaces[0].untagged_vlan = vlans[0]
+ vm_interfaces[0].tagged_vlans.add(vlans[1])
+ vm_interfaces[1].untagged_vlan = vlans[2]
+ vm_interfaces[1].tagged_vlans.add(vlans[3])
+ vm_interfaces[2].untagged_vlan = vlans[4]
+ vm_interfaces[2].tagged_vlans.add(vlans[5])
+
def test_q(self):
params = {'q': 'foobar1'}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
@@ -1857,6 +1887,16 @@ class VLANTestCase(TestCase, ChangeLoggedFilterSetTests):
params = {'available_at_site': site_id}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 5) # 4 scoped + 1 global group + 1 global
+ def test_interface(self):
+ interface_id = Interface.objects.first().pk
+ params = {'interface_id': interface_id}
+ self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
+
+ def test_vminterface(self):
+ vminterface_id = VMInterface.objects.first().pk
+ params = {'vminterface_id': vminterface_id}
+ self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
+
class ServiceTemplateTestCase(TestCase, ChangeLoggedFilterSetTests):
queryset = ServiceTemplate.objects.all()
diff --git a/netbox/ipam/tests/test_views.py b/netbox/ipam/tests/test_views.py
index 2acb80ac1..95b311878 100644
--- a/netbox/ipam/tests/test_views.py
+++ b/netbox/ipam/tests/test_views.py
@@ -50,7 +50,7 @@ class ASNRangeTestCase(ViewTestCases.PrimaryObjectViewTestCase):
}
cls.csv_data = (
- f"name,slug,rir,tenant,start,end,description",
+ "name,slug,rir,tenant,start,end,description",
f"ASN Range 4,asn-range-4,{rirs[1].name},{tenants[1].name},400,499,Fourth range",
f"ASN Range 5,asn-range-5,{rirs[1].name},{tenants[1].name},500,599,Fifth range",
f"ASN Range 6,asn-range-6,{rirs[1].name},{tenants[1].name},600,699,Sixth range",
@@ -770,14 +770,14 @@ class VLANGroupTestCase(ViewTestCases.OrganizationalObjectViewTestCase):
}
cls.csv_data = (
- f"name,slug,scope_type,scope_id,description",
- f"VLAN Group 4,vlan-group-4,,,Fourth VLAN group",
+ "name,slug,scope_type,scope_id,description",
+ "VLAN Group 4,vlan-group-4,,,Fourth VLAN group",
f"VLAN Group 5,vlan-group-5,dcim.site,{sites[0].pk},Fifth VLAN group",
f"VLAN Group 6,vlan-group-6,dcim.site,{sites[1].pk},Sixth VLAN group",
)
cls.csv_update_data = (
- f"id,name,description",
+ "id,name,description",
f"{vlan_groups[0].pk},VLAN Group 7,Fourth VLAN group7",
f"{vlan_groups[1].pk},VLAN Group 8,Fifth VLAN group8",
f"{vlan_groups[2].pk},VLAN Group 9,Sixth VLAN group9",
diff --git a/netbox/netbox/api/serializers/nested.py b/netbox/netbox/api/serializers/nested.py
index 04033c71f..4a5fc6214 100644
--- a/netbox/netbox/api/serializers/nested.py
+++ b/netbox/netbox/api/serializers/nested.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from extras.models import Tag
from utilities.api import get_related_object_by_attrs
from .base import BaseModelSerializer
diff --git a/netbox/netbox/authentication/__init__.py b/netbox/netbox/authentication/__init__.py
index 7394f6ded..f80454f99 100644
--- a/netbox/netbox/authentication/__init__.py
+++ b/netbox/netbox/authentication/__init__.py
@@ -20,10 +20,10 @@ AUTH_BACKEND_ATTRS = {
'amazon': ('Amazon AWS', 'aws'),
'apple': ('Apple', 'apple'),
'auth0': ('Auth0', None),
- 'azuread-oauth2': ('Microsoft Azure AD', 'microsoft'),
- 'azuread-b2c-oauth2': ('Microsoft Azure AD', 'microsoft'),
- 'azuread-tenant-oauth2': ('Microsoft Azure AD', 'microsoft'),
- 'azuread-v2-tenant-oauth2': ('Microsoft Azure AD', 'microsoft'),
+ 'entraid-oauth2': ('Microsoft Entra ID', 'microsoft'),
+ 'entraid-b2c-oauth2': ('Microsoft Entra ID', 'microsoft'),
+ 'entraid-tenant-oauth2': ('Microsoft Entra ID', 'microsoft'),
+ 'entraid-v2-tenant-oauth2': ('Microsoft Entra ID', 'microsoft'),
'bitbucket': ('BitBucket', 'bitbucket'),
'bitbucket-oauth2': ('BitBucket', 'bitbucket'),
'digitalocean': ('DigitalOcean', 'digital-ocean'),
diff --git a/netbox/netbox/config/__init__.py b/netbox/netbox/config/__init__.py
index 1c16d6769..23108f1d2 100644
--- a/netbox/netbox/config/__init__.py
+++ b/netbox/netbox/config/__init__.py
@@ -85,7 +85,7 @@ class Config:
logger.debug("Loaded configuration data from database")
except DatabaseError:
# The database may not be available yet (e.g. when running a management command)
- logger.warning(f"Skipping config initialization (database unavailable)")
+ logger.warning("Skipping config initialization (database unavailable)")
return
revision.activate()
diff --git a/netbox/netbox/data_backends.py b/netbox/netbox/data_backends.py
index d5bab75c1..e3a3de4d1 100644
--- a/netbox/netbox/data_backends.py
+++ b/netbox/netbox/data_backends.py
@@ -50,4 +50,4 @@ class DataBackend:
2. Yields the local path at which data has been replicated
3. Performs any necessary cleanup
"""
- raise NotImplemented()
+ raise NotImplementedError()
diff --git a/netbox/netbox/filtersets.py b/netbox/netbox/filtersets.py
index e3bd33298..637a40bf1 100644
--- a/netbox/netbox/filtersets.py
+++ b/netbox/netbox/filtersets.py
@@ -180,9 +180,11 @@ class BaseFilterSet(django_filters.FilterSet):
# create the new filter with the same type because there is no guarantee the defined type
# is the same as the default type for the field
resolve_field(field, lookup_expr) # Will raise FieldLookupError if the lookup is invalid
- for field_to_remove in ('choices', 'null_value'):
- existing_filter_extra.pop(field_to_remove, None)
- filter_cls = django_filters.BooleanFilter if lookup_expr == 'empty' else type(existing_filter)
+ filter_cls = type(existing_filter)
+ if lookup_expr == 'empty':
+ filter_cls = django_filters.BooleanFilter
+ for param_to_remove in ('choices', 'null_value'):
+ existing_filter_extra.pop(param_to_remove, None)
new_filter = filter_cls(
field_name=field_name,
lookup_expr=lookup_expr,
diff --git a/netbox/netbox/graphql/filter_mixins.py b/netbox/netbox/graphql/filter_mixins.py
index 65c7ffcef..2044a1dde 100644
--- a/netbox/netbox/graphql/filter_mixins.py
+++ b/netbox/netbox/graphql/filter_mixins.py
@@ -1,11 +1,12 @@
-from functools import partial, partialmethod, wraps
+from functools import partialmethod
from typing import List
import django_filters
import strawberry
import strawberry_django
-from django.core.exceptions import FieldDoesNotExist, ValidationError
+from django.core.exceptions import FieldDoesNotExist
from strawberry import auto
+
from ipam.fields import ASNField
from netbox.graphql.scalars import BigInt
from utilities.fields import ColorField, CounterCacheField
@@ -108,8 +109,7 @@ def map_strawberry_type(field):
elif issubclass(type(field), django_filters.TypedMultipleChoiceFilter):
pass
elif issubclass(type(field), django_filters.MultipleChoiceFilter):
- should_create_function = True
- attr_type = List[str] | None
+ attr_type = str | None
elif issubclass(type(field), django_filters.TypedChoiceFilter):
pass
elif issubclass(type(field), django_filters.ChoiceFilter):
diff --git a/netbox/netbox/navigation/menu.py b/netbox/netbox/navigation/menu.py
index a1d65d6e2..9d8ffaaf8 100644
--- a/netbox/netbox/navigation/menu.py
+++ b/netbox/netbox/navigation/menu.py
@@ -386,57 +386,57 @@ ADMIN_MENU = Menu(
label=_('Authentication'),
items=(
MenuItem(
- link=f'users:user_list',
+ link='users:user_list',
link_text=_('Users'),
auth_required=True,
- permissions=[f'users.view_user'],
+ permissions=['users.view_user'],
buttons=(
MenuItemButton(
- link=f'users:user_add',
+ link='users:user_add',
title='Add',
icon_class='mdi mdi-plus-thick',
- permissions=[f'users.add_user']
+ permissions=['users.add_user']
),
MenuItemButton(
- link=f'users:user_import',
+ link='users:user_import',
title='Import',
icon_class='mdi mdi-upload',
- permissions=[f'users.add_user']
+ permissions=['users.add_user']
)
)
),
MenuItem(
- link=f'users:group_list',
+ link='users:group_list',
link_text=_('Groups'),
auth_required=True,
- permissions=[f'users.view_group'],
+ permissions=['users.view_group'],
buttons=(
MenuItemButton(
- link=f'users:group_add',
+ link='users:group_add',
title='Add',
icon_class='mdi mdi-plus-thick',
- permissions=[f'users.add_group']
+ permissions=['users.add_group']
),
MenuItemButton(
- link=f'users:group_import',
+ link='users:group_import',
title='Import',
icon_class='mdi mdi-upload',
- permissions=[f'users.add_group']
+ permissions=['users.add_group']
)
)
),
MenuItem(
- link=f'users:token_list',
+ link='users:token_list',
link_text=_('API Tokens'),
auth_required=True,
- permissions=[f'users.view_token'],
+ permissions=['users.view_token'],
buttons=get_model_buttons('users', 'token')
),
MenuItem(
- link=f'users:objectpermission_list',
+ link='users:objectpermission_list',
link_text=_('Permissions'),
auth_required=True,
- permissions=[f'users.view_objectpermission'],
+ permissions=['users.view_objectpermission'],
buttons=get_model_buttons('users', 'objectpermission', actions=['add'])
),
),
diff --git a/netbox/netbox/plugins/views.py b/netbox/netbox/plugins/views.py
index 777a4c69e..6a10f2e2c 100644
--- a/netbox/netbox/plugins/views.py
+++ b/netbox/netbox/plugins/views.py
@@ -2,9 +2,7 @@ from collections import OrderedDict
from django.apps import apps
from django.conf import settings
-from django.shortcuts import render
from django.urls.exceptions import NoReverseMatch
-from django.views.generic import View
from drf_spectacular.utils import extend_schema
from rest_framework import permissions
from rest_framework.response import Response
diff --git a/netbox/netbox/settings.py b/netbox/netbox/settings.py
index 206a58cff..2b057b9ab 100644
--- a/netbox/netbox/settings.py
+++ b/netbox/netbox/settings.py
@@ -5,14 +5,12 @@ import os
import platform
import sys
import warnings
-from urllib.parse import urlencode, urlsplit
+from urllib.parse import urlencode
-import django
import requests
from django.contrib.messages import constants as messages
from django.core.exceptions import ImproperlyConfigured, ValidationError
from django.core.validators import URLValidator
-from django.utils.encoding import force_str
from django.utils.translation import gettext_lazy as _
from netbox.config import PARAMS as CONFIG_PARAMS
@@ -199,7 +197,7 @@ if len(SECRET_KEY) < 50:
if RELEASE_CHECK_URL:
try:
URLValidator()(RELEASE_CHECK_URL)
- except ValidationError as e:
+ except ValidationError:
raise ImproperlyConfigured(
"RELEASE_CHECK_URL must be a valid URL. Example: https://api.github.com/repos/netbox-community/netbox"
)
@@ -251,7 +249,7 @@ if STORAGE_BACKEND is not None:
# django-storage-swift
elif STORAGE_BACKEND == 'swift.storage.SwiftStorage':
try:
- import swift.utils # type: ignore
+ import swift.utils # noqa: F401
except ModuleNotFoundError as e:
if getattr(e, 'name') == 'swift':
raise ImproperlyConfigured(
diff --git a/netbox/netbox/staging.py b/netbox/netbox/staging.py
index 4d37fb7ad..e6b946403 100644
--- a/netbox/netbox/staging.py
+++ b/netbox/netbox/staging.py
@@ -80,7 +80,7 @@ class checkout:
Create Change instances for all actions stored in the queue.
"""
if not self.queue:
- logger.debug(f"No queued changes; aborting")
+ logger.debug("No queued changes; aborting")
return
logger.debug(f"Processing {len(self.queue)} queued changes")
diff --git a/netbox/netbox/tests/dummy_plugin/views.py b/netbox/netbox/tests/dummy_plugin/views.py
index f6cf6a5c5..82f250fc1 100644
--- a/netbox/netbox/tests/dummy_plugin/views.py
+++ b/netbox/netbox/tests/dummy_plugin/views.py
@@ -8,7 +8,7 @@ from dcim.models import Site
from utilities.views import register_model_view
from .models import DummyModel
# Trigger registration of custom column
-from .tables import mycol
+from .tables import mycol # noqa: F401
class DummyModelsView(View):
@@ -21,7 +21,7 @@ class DummyModelsView(View):
class DummyModelAddView(View):
def get(self, request):
- return HttpResponse(f"Create an instance")
+ return HttpResponse("Create an instance")
def post(self, request):
instance = DummyModel(
@@ -29,7 +29,7 @@ class DummyModelAddView(View):
number=random.randint(1, 100000)
)
instance.save()
- return HttpResponse(f"Instance created")
+ return HttpResponse("Instance created")
@register_model_view(Site, 'extra', path='other-stuff')
diff --git a/netbox/netbox/tests/test_authentication.py b/netbox/netbox/tests/test_authentication.py
index 5c7a30dc7..ae6d3f4c2 100644
--- a/netbox/netbox/tests/test_authentication.py
+++ b/netbox/netbox/tests/test_authentication.py
@@ -106,7 +106,7 @@ class ExternalAuthenticationTestCase(TestCase):
self.assertEqual(settings.REMOTE_AUTH_HEADER, 'HTTP_REMOTE_USER')
# Client should not be authenticated
- response = self.client.get(reverse('home'), follow=True, **headers)
+ self.client.get(reverse('home'), follow=True, **headers)
self.assertNotIn('_auth_user_id', self.client.session)
@override_settings(
diff --git a/netbox/netbox/tests/test_graphql.py b/netbox/netbox/tests/test_graphql.py
index 34ea3ad6a..b04d42d24 100644
--- a/netbox/netbox/tests/test_graphql.py
+++ b/netbox/netbox/tests/test_graphql.py
@@ -5,8 +5,8 @@ from django.urls import reverse
from rest_framework import status
from core.models import ObjectType
+from dcim.choices import LocationStatusChoices
from dcim.models import Site, Location
-from ipam.models import ASN, RIR
from users.models import ObjectPermission
from utilities.testing import disable_warnings, APITestCase, TestCase
@@ -53,10 +53,27 @@ class GraphQLAPITestCase(APITestCase):
sites = (
Site(name='Site 1', slug='site-1'),
Site(name='Site 2', slug='site-2'),
+ Site(name='Site 3', slug='site-3'),
)
Site.objects.bulk_create(sites)
- Location.objects.create(site=sites[0], name='Location 1', slug='location-1'),
- Location.objects.create(site=sites[1], name='Location 2', slug='location-2'),
+ Location.objects.create(
+ site=sites[0],
+ name='Location 1',
+ slug='location-1',
+ status=LocationStatusChoices.STATUS_PLANNED
+ ),
+ Location.objects.create(
+ site=sites[1],
+ name='Location 2',
+ slug='location-2',
+ status=LocationStatusChoices.STATUS_STAGING
+ ),
+ Location.objects.create(
+ site=sites[1],
+ name='Location 3',
+ slug='location-3',
+ status=LocationStatusChoices.STATUS_ACTIVE
+ ),
# Add object-level permission
obj_perm = ObjectPermission(
@@ -68,8 +85,9 @@ class GraphQLAPITestCase(APITestCase):
obj_perm.object_types.add(ObjectType.objects.get_for_model(Location))
obj_perm.object_types.add(ObjectType.objects.get_for_model(Site))
- # A valid request should return the filtered list
url = reverse('graphql')
+
+ # A valid request should return the filtered list
query = '{location_list(filters: {site_id: "' + str(sites[0].pk) + '"}) {id site {id}}}'
response = self.client.post(url, data={'query': query}, format="json", **self.header)
self.assertHttpStatus(response, status.HTTP_200_OK)
@@ -78,6 +96,21 @@ class GraphQLAPITestCase(APITestCase):
self.assertEqual(len(data['data']['location_list']), 1)
self.assertIsNotNone(data['data']['location_list'][0]['site'])
+ # Test OR logic
+ query = """{
+ location_list( filters: {
+ status: \"""" + LocationStatusChoices.STATUS_PLANNED + """\",
+ OR: {status: \"""" + LocationStatusChoices.STATUS_STAGING + """\"}
+ }) {
+ id site {id}
+ }
+ }"""
+ response = self.client.post(url, data={'query': query}, format="json", **self.header)
+ self.assertHttpStatus(response, status.HTTP_200_OK)
+ data = json.loads(response.content)
+ self.assertNotIn('errors', data)
+ self.assertEqual(len(data['data']['location_list']), 2)
+
# An invalid request should return an empty list
query = '{location_list(filters: {site_id: "99999"}) {id site {id}}}' # Invalid site ID
response = self.client.post(url, data={'query': query}, format="json", **self.header)
diff --git a/netbox/netbox/tests/test_import.py b/netbox/netbox/tests/test_import.py
index 03690029c..16711ef72 100644
--- a/netbox/netbox/tests/test_import.py
+++ b/netbox/netbox/tests/test_import.py
@@ -77,7 +77,6 @@ class CSVImportTestCase(ModelViewTestCase):
self.assertHttpStatus(self.client.post(self._get_url('import'), data), 302)
regions = Region.objects.all()
self.assertEqual(regions.count(), 4)
- region = Region.objects.get(slug="region-4")
self.assertEqual(
list(regions[0].tags.values_list('name', flat=True)),
['Alpha', 'Bravo']
diff --git a/netbox/netbox/views/generic/object_views.py b/netbox/netbox/views/generic/object_views.py
index 357264522..0686e52b7 100644
--- a/netbox/netbox/views/generic/object_views.py
+++ b/netbox/netbox/views/generic/object_views.py
@@ -146,10 +146,12 @@ class ObjectChildrenView(ObjectView, ActionsMixin, TableMixin):
return render(request, 'htmx/table.html', {
'object': instance,
'table': table,
+ 'model': self.child_model,
})
return render(request, self.get_template_name(), {
'object': instance,
+ 'model': self.child_model,
'child_model': self.child_model,
'base_template': f'{instance._meta.app_label}/{instance._meta.model_name}.html',
'table': table,
diff --git a/netbox/project-static/dist/Inter-Black-7VL4YR6G.woff b/netbox/project-static/dist/Inter-Black-7VL4YR6G.woff
new file mode 100644
index 000000000..2f5cb41be
Binary files /dev/null and b/netbox/project-static/dist/Inter-Black-7VL4YR6G.woff differ
diff --git a/netbox/project-static/dist/Inter-Black-NU3KAVPI.woff2 b/netbox/project-static/dist/Inter-Black-NU3KAVPI.woff2
new file mode 100644
index 000000000..53c0aa239
Binary files /dev/null and b/netbox/project-static/dist/Inter-Black-NU3KAVPI.woff2 differ
diff --git a/netbox/project-static/dist/Inter-BlackItalic-4BVAVUVI.woff2 b/netbox/project-static/dist/Inter-BlackItalic-4BVAVUVI.woff2
new file mode 100644
index 000000000..63ec88686
Binary files /dev/null and b/netbox/project-static/dist/Inter-BlackItalic-4BVAVUVI.woff2 differ
diff --git a/netbox/project-static/dist/Inter-BlackItalic-HJLUEYVW.woff b/netbox/project-static/dist/Inter-BlackItalic-HJLUEYVW.woff
new file mode 100644
index 000000000..a168e5820
Binary files /dev/null and b/netbox/project-static/dist/Inter-BlackItalic-HJLUEYVW.woff differ
diff --git a/netbox/project-static/dist/Inter-Bold-6AVOS7AV.woff2 b/netbox/project-static/dist/Inter-Bold-6AVOS7AV.woff2
new file mode 100644
index 000000000..6989c9922
Binary files /dev/null and b/netbox/project-static/dist/Inter-Bold-6AVOS7AV.woff2 differ
diff --git a/netbox/project-static/dist/Inter-Bold-RTIBL5DO.woff b/netbox/project-static/dist/Inter-Bold-RTIBL5DO.woff
new file mode 100644
index 000000000..2ec7ac3d2
Binary files /dev/null and b/netbox/project-static/dist/Inter-Bold-RTIBL5DO.woff differ
diff --git a/netbox/project-static/dist/Inter-BoldItalic-AID2XGS3.woff2 b/netbox/project-static/dist/Inter-BoldItalic-AID2XGS3.woff2
new file mode 100644
index 000000000..18b4c1ce5
Binary files /dev/null and b/netbox/project-static/dist/Inter-BoldItalic-AID2XGS3.woff2 differ
diff --git a/netbox/project-static/dist/Inter-BoldItalic-UU7SOVRI.woff b/netbox/project-static/dist/Inter-BoldItalic-UU7SOVRI.woff
new file mode 100644
index 000000000..aa35b7974
Binary files /dev/null and b/netbox/project-static/dist/Inter-BoldItalic-UU7SOVRI.woff differ
diff --git a/netbox/project-static/dist/Inter-ExtraBold-B5RSZK6R.woff b/netbox/project-static/dist/Inter-ExtraBold-B5RSZK6R.woff
new file mode 100644
index 000000000..d79d3d242
Binary files /dev/null and b/netbox/project-static/dist/Inter-ExtraBold-B5RSZK6R.woff differ
diff --git a/netbox/project-static/dist/Inter-ExtraBold-VAPCTO5F.woff2 b/netbox/project-static/dist/Inter-ExtraBold-VAPCTO5F.woff2
new file mode 100644
index 000000000..3e74973f2
Binary files /dev/null and b/netbox/project-static/dist/Inter-ExtraBold-VAPCTO5F.woff2 differ
diff --git a/netbox/project-static/dist/Inter-ExtraBoldItalic-R7DLWYIK.woff b/netbox/project-static/dist/Inter-ExtraBoldItalic-R7DLWYIK.woff
new file mode 100644
index 000000000..06aad19b0
Binary files /dev/null and b/netbox/project-static/dist/Inter-ExtraBoldItalic-R7DLWYIK.woff differ
diff --git a/netbox/project-static/dist/Inter-ExtraBoldItalic-W26CJYY7.woff2 b/netbox/project-static/dist/Inter-ExtraBoldItalic-W26CJYY7.woff2
new file mode 100644
index 000000000..77391ea7f
Binary files /dev/null and b/netbox/project-static/dist/Inter-ExtraBoldItalic-W26CJYY7.woff2 differ
diff --git a/netbox/project-static/dist/Inter-ExtraLight-A7NHN7KT.woff b/netbox/project-static/dist/Inter-ExtraLight-A7NHN7KT.woff
new file mode 100644
index 000000000..fee5fca02
Binary files /dev/null and b/netbox/project-static/dist/Inter-ExtraLight-A7NHN7KT.woff differ
diff --git a/netbox/project-static/dist/Inter-ExtraLight-DVW3SATI.woff2 b/netbox/project-static/dist/Inter-ExtraLight-DVW3SATI.woff2
new file mode 100644
index 000000000..607250b9a
Binary files /dev/null and b/netbox/project-static/dist/Inter-ExtraLight-DVW3SATI.woff2 differ
diff --git a/netbox/project-static/dist/Inter-ExtraLightItalic-KXZYPKOE.woff2 b/netbox/project-static/dist/Inter-ExtraLightItalic-KXZYPKOE.woff2
new file mode 100644
index 000000000..858d38a50
Binary files /dev/null and b/netbox/project-static/dist/Inter-ExtraLightItalic-KXZYPKOE.woff2 differ
diff --git a/netbox/project-static/dist/Inter-ExtraLightItalic-SKGXKLLA.woff b/netbox/project-static/dist/Inter-ExtraLightItalic-SKGXKLLA.woff
new file mode 100644
index 000000000..94e6582b5
Binary files /dev/null and b/netbox/project-static/dist/Inter-ExtraLightItalic-SKGXKLLA.woff differ
diff --git a/netbox/project-static/dist/Inter-Italic-GHDVOOKA.woff b/netbox/project-static/dist/Inter-Italic-GHDVOOKA.woff
new file mode 100644
index 000000000..4b765bd59
Binary files /dev/null and b/netbox/project-static/dist/Inter-Italic-GHDVOOKA.woff differ
diff --git a/netbox/project-static/dist/Inter-Italic-RW2ZALTO.woff2 b/netbox/project-static/dist/Inter-Italic-RW2ZALTO.woff2
new file mode 100644
index 000000000..bd5f255a9
Binary files /dev/null and b/netbox/project-static/dist/Inter-Italic-RW2ZALTO.woff2 differ
diff --git a/netbox/project-static/dist/Inter-Light-ARG5Y6MT.woff b/netbox/project-static/dist/Inter-Light-ARG5Y6MT.woff
new file mode 100644
index 000000000..7590ff890
Binary files /dev/null and b/netbox/project-static/dist/Inter-Light-ARG5Y6MT.woff differ
diff --git a/netbox/project-static/dist/Inter-Light-XBRUIIRZ.woff2 b/netbox/project-static/dist/Inter-Light-XBRUIIRZ.woff2
new file mode 100644
index 000000000..551410ac3
Binary files /dev/null and b/netbox/project-static/dist/Inter-Light-XBRUIIRZ.woff2 differ
diff --git a/netbox/project-static/dist/Inter-LightItalic-4OWY6V5R.woff2 b/netbox/project-static/dist/Inter-LightItalic-4OWY6V5R.woff2
new file mode 100644
index 000000000..976d52564
Binary files /dev/null and b/netbox/project-static/dist/Inter-LightItalic-4OWY6V5R.woff2 differ
diff --git a/netbox/project-static/dist/Inter-LightItalic-WFS25IQZ.woff b/netbox/project-static/dist/Inter-LightItalic-WFS25IQZ.woff
new file mode 100644
index 000000000..8f2a4ca46
Binary files /dev/null and b/netbox/project-static/dist/Inter-LightItalic-WFS25IQZ.woff differ
diff --git a/netbox/project-static/dist/Inter-Medium-JV63DMR7.woff2 b/netbox/project-static/dist/Inter-Medium-JV63DMR7.woff2
new file mode 100644
index 000000000..a916b47fc
Binary files /dev/null and b/netbox/project-static/dist/Inter-Medium-JV63DMR7.woff2 differ
diff --git a/netbox/project-static/dist/Inter-Medium-KH2CGZVE.woff b/netbox/project-static/dist/Inter-Medium-KH2CGZVE.woff
new file mode 100644
index 000000000..7d55f34cc
Binary files /dev/null and b/netbox/project-static/dist/Inter-Medium-KH2CGZVE.woff differ
diff --git a/netbox/project-static/dist/Inter-MediumItalic-P7H6BBYU.woff2 b/netbox/project-static/dist/Inter-MediumItalic-P7H6BBYU.woff2
new file mode 100644
index 000000000..f623924ae
Binary files /dev/null and b/netbox/project-static/dist/Inter-MediumItalic-P7H6BBYU.woff2 differ
diff --git a/netbox/project-static/dist/Inter-MediumItalic-PO2E4FIG.woff b/netbox/project-static/dist/Inter-MediumItalic-PO2E4FIG.woff
new file mode 100644
index 000000000..422ab0576
Binary files /dev/null and b/netbox/project-static/dist/Inter-MediumItalic-PO2E4FIG.woff differ
diff --git a/netbox/project-static/dist/Inter-Regular-373XMOLM.woff2 b/netbox/project-static/dist/Inter-Regular-373XMOLM.woff2
new file mode 100644
index 000000000..554aed661
Binary files /dev/null and b/netbox/project-static/dist/Inter-Regular-373XMOLM.woff2 differ
diff --git a/netbox/project-static/dist/Inter-Regular-DR3VC6YG.woff b/netbox/project-static/dist/Inter-Regular-DR3VC6YG.woff
new file mode 100644
index 000000000..7ff51b7d8
Binary files /dev/null and b/netbox/project-static/dist/Inter-Regular-DR3VC6YG.woff differ
diff --git a/netbox/project-static/dist/Inter-SemiBold-TJ6HPMMH.woff b/netbox/project-static/dist/Inter-SemiBold-TJ6HPMMH.woff
new file mode 100644
index 000000000..76e507a51
Binary files /dev/null and b/netbox/project-static/dist/Inter-SemiBold-TJ6HPMMH.woff differ
diff --git a/netbox/project-static/dist/Inter-SemiBold-UMRILHOG.woff2 b/netbox/project-static/dist/Inter-SemiBold-UMRILHOG.woff2
new file mode 100644
index 000000000..930799899
Binary files /dev/null and b/netbox/project-static/dist/Inter-SemiBold-UMRILHOG.woff2 differ
diff --git a/netbox/project-static/dist/Inter-SemiBoldItalic-ABO2DCC7.woff2 b/netbox/project-static/dist/Inter-SemiBoldItalic-ABO2DCC7.woff2
new file mode 100644
index 000000000..f19f5505e
Binary files /dev/null and b/netbox/project-static/dist/Inter-SemiBoldItalic-ABO2DCC7.woff2 differ
diff --git a/netbox/project-static/dist/Inter-SemiBoldItalic-DM4JJSFU.woff b/netbox/project-static/dist/Inter-SemiBoldItalic-DM4JJSFU.woff
new file mode 100644
index 000000000..382181212
Binary files /dev/null and b/netbox/project-static/dist/Inter-SemiBoldItalic-DM4JJSFU.woff differ
diff --git a/netbox/project-static/dist/Inter-Thin-MEKOZMGA.woff b/netbox/project-static/dist/Inter-Thin-MEKOZMGA.woff
new file mode 100644
index 000000000..6074d22b9
Binary files /dev/null and b/netbox/project-static/dist/Inter-Thin-MEKOZMGA.woff differ
diff --git a/netbox/project-static/dist/Inter-Thin-TCINWRKS.woff2 b/netbox/project-static/dist/Inter-Thin-TCINWRKS.woff2
new file mode 100644
index 000000000..07d4fd6f2
Binary files /dev/null and b/netbox/project-static/dist/Inter-Thin-TCINWRKS.woff2 differ
diff --git a/netbox/project-static/dist/Inter-ThinItalic-WRULPH3M.woff2 b/netbox/project-static/dist/Inter-ThinItalic-WRULPH3M.woff2
new file mode 100644
index 000000000..a824b2c98
Binary files /dev/null and b/netbox/project-static/dist/Inter-ThinItalic-WRULPH3M.woff2 differ
diff --git a/netbox/project-static/dist/Inter-ThinItalic-ZFOL6JFL.woff b/netbox/project-static/dist/Inter-ThinItalic-ZFOL6JFL.woff
new file mode 100644
index 000000000..e612ae45e
Binary files /dev/null and b/netbox/project-static/dist/Inter-ThinItalic-ZFOL6JFL.woff differ
diff --git a/netbox/project-static/dist/Inter-italic.var-7LS4VCXC.woff2 b/netbox/project-static/dist/Inter-italic.var-7LS4VCXC.woff2
new file mode 100644
index 000000000..03875311a
Binary files /dev/null and b/netbox/project-static/dist/Inter-italic.var-7LS4VCXC.woff2 differ
diff --git a/netbox/project-static/dist/Inter-roman.var-EDENVCUS.woff2 b/netbox/project-static/dist/Inter-roman.var-EDENVCUS.woff2
new file mode 100644
index 000000000..a6efdc486
Binary files /dev/null and b/netbox/project-static/dist/Inter-roman.var-EDENVCUS.woff2 differ
diff --git a/netbox/project-static/dist/Inter.var-FTIQFLGO.woff2 b/netbox/project-static/dist/Inter.var-FTIQFLGO.woff2
new file mode 100644
index 000000000..b40083cbb
Binary files /dev/null and b/netbox/project-static/dist/Inter.var-FTIQFLGO.woff2 differ
diff --git a/netbox/project-static/dist/netbox-external.css b/netbox/project-static/dist/netbox-external.css
index 7952f0e1e..72d40bc92 100644
Binary files a/netbox/project-static/dist/netbox-external.css and b/netbox/project-static/dist/netbox-external.css differ
diff --git a/netbox/project-static/dist/netbox.css b/netbox/project-static/dist/netbox.css
index 6f4f8ac36..93361c63a 100644
Binary files a/netbox/project-static/dist/netbox.css and b/netbox/project-static/dist/netbox.css differ
diff --git a/netbox/project-static/dist/plus-jakarta-sans-cyrillic-ext-wght-normal-3FNWYSHQ.woff2 b/netbox/project-static/dist/plus-jakarta-sans-cyrillic-ext-wght-normal-3FNWYSHQ.woff2
deleted file mode 100644
index c456409f0..000000000
Binary files a/netbox/project-static/dist/plus-jakarta-sans-cyrillic-ext-wght-normal-3FNWYSHQ.woff2 and /dev/null differ
diff --git a/netbox/project-static/dist/plus-jakarta-sans-latin-ext-wght-normal-WWG75Y4U.woff2 b/netbox/project-static/dist/plus-jakarta-sans-latin-ext-wght-normal-WWG75Y4U.woff2
deleted file mode 100644
index bdb7edfd4..000000000
Binary files a/netbox/project-static/dist/plus-jakarta-sans-latin-ext-wght-normal-WWG75Y4U.woff2 and /dev/null differ
diff --git a/netbox/project-static/dist/plus-jakarta-sans-latin-wght-normal-S6EFCQOU.woff2 b/netbox/project-static/dist/plus-jakarta-sans-latin-wght-normal-S6EFCQOU.woff2
deleted file mode 100644
index 8c4a84afe..000000000
Binary files a/netbox/project-static/dist/plus-jakarta-sans-latin-wght-normal-S6EFCQOU.woff2 and /dev/null differ
diff --git a/netbox/project-static/dist/plus-jakarta-sans-vietnamese-wght-normal-NNXUV3SN.woff2 b/netbox/project-static/dist/plus-jakarta-sans-vietnamese-wght-normal-NNXUV3SN.woff2
deleted file mode 100644
index 57866b15f..000000000
Binary files a/netbox/project-static/dist/plus-jakarta-sans-vietnamese-wght-normal-NNXUV3SN.woff2 and /dev/null differ
diff --git a/netbox/project-static/package.json b/netbox/project-static/package.json
index 5c16bee60..8180ddb90 100644
--- a/netbox/project-static/package.json
+++ b/netbox/project-static/package.json
@@ -22,7 +22,6 @@
"validate:formatting:scripts": "prettier -c src/**/*.ts"
},
"dependencies": {
- "@fontsource-variable/plus-jakarta-sans": "^5.1.0",
"@mdi/font": "7.4.47",
"@tabler/core": "1.0.0-beta21",
"bootstrap": "5.3.3",
@@ -31,8 +30,9 @@
"gridstack": "10.3.1",
"htmx.org": "1.9.12",
"query-string": "9.1.0",
- "sass": "1.78.0",
+ "sass": "1.79.3",
"tom-select": "2.3.1",
+ "typeface-inter": "3.18.1",
"typeface-roboto-mono": "1.1.13"
},
"devDependencies": {
diff --git a/netbox/project-static/styles/_variables.scss b/netbox/project-static/styles/_variables.scss
index 749f0ba57..33b144532 100644
--- a/netbox/project-static/styles/_variables.scss
+++ b/netbox/project-static/styles/_variables.scss
@@ -1,10 +1,9 @@
// Global variables
// Set base fonts
-$font-family-sans-serif: 'Plus Jakarta Sans Variable', system-ui, sans-serif;
+$font-family-sans-serif: 'Inter', system-ui, sans-serif;
// See https://github.com/tabler/tabler/issues/1812
$font-family-monospace: 'Roboto Mono';
-$font-weight-base: 500;
// Set the navigation sidebar width
$sidebar-width: 18rem;
diff --git a/netbox/project-static/styles/external.scss b/netbox/project-static/styles/external.scss
index 1e09d1803..b3c83aa87 100644
--- a/netbox/project-static/styles/external.scss
+++ b/netbox/project-static/styles/external.scss
@@ -4,5 +4,5 @@
@import 'gridstack/dist/gridstack.min.css';
// Fonts
+@import url("../node_modules/typeface-inter/inter.css");
@import url("../node_modules/typeface-roboto-mono/index.css");
-@import url("../node_modules/@fontsource-variable/plus-jakarta-sans/index.css");
diff --git a/netbox/project-static/yarn.lock b/netbox/project-static/yarn.lock
index ca9f5ff96..e1a30b229 100644
--- a/netbox/project-static/yarn.lock
+++ b/netbox/project-static/yarn.lock
@@ -200,11 +200,6 @@
resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.2.tgz#d8bae93ac8b815b2bd7a98078cf91e2724ef11e5"
integrity sha512-J4yDIIthosAsRZ5CPYP/jQvUAQtlZTTD/4suA08/FEnlxqW3sKS9iAhgsa9VYLZ6vDHn/ixJgIqRQPotoBjxIw==
-"@fontsource-variable/plus-jakarta-sans@^5.1.0":
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/@fontsource-variable/plus-jakarta-sans/-/plus-jakarta-sans-5.1.0.tgz#9dd5aa72277c43d408f6e34cd658d823fbef1fe1"
- integrity sha512-K7o2GO7/quVFFyfjTqYZu0ng4KJGf60KSAGbvUWwKuH+/Giyl6Qe/EqnGLcjrl9AmXZzTvtRB1xpkASn8FNFoQ==
-
"@graphiql/plugin-explorer@3.2.2":
version "3.2.2"
resolved "https://registry.yarnpkg.com/@graphiql/plugin-explorer/-/plugin-explorer-3.2.2.tgz#973d6015b6db15041902e95c3e4b746473313eb6"
@@ -1043,6 +1038,13 @@ chalk@^4.0.0:
optionalDependencies:
fsevents "~2.3.2"
+chokidar@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-4.0.1.tgz#4a6dff66798fb0f72a94f616abbd7e1a19f31d41"
+ integrity sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==
+ dependencies:
+ readdirp "^4.0.1"
+
client-only@^0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1"
@@ -2472,6 +2474,11 @@ react@18.3.1:
dependencies:
loose-envify "^1.1.0"
+readdirp@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-4.0.1.tgz#b2fe35f8dca63183cd3b86883ecc8f720ea96ae6"
+ integrity sha512-GkMg9uOTpIWWKbSsgwb5fA4EavTR+SG/PMPoAY8hkhHfEEY0/vqljY+XHqtDf2cr2IJtoNRDbrrEpZUiZCkYRw==
+
readdirp@~3.6.0:
version "3.6.0"
resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
@@ -2556,12 +2563,12 @@ safe-regex-test@^1.0.3:
es-errors "^1.3.0"
is-regex "^1.1.4"
-sass@1.78.0:
- version "1.78.0"
- resolved "https://registry.yarnpkg.com/sass/-/sass-1.78.0.tgz#cef369b2f9dc21ea1d2cf22c979f52365da60841"
- integrity sha512-AaIqGSrjo5lA2Yg7RvFZrlXDBCp3nV4XP73GrLGvdRWWwk+8H3l0SDvq/5bA4eF+0RFPLuWUk3E+P1U/YqnpsQ==
+sass@1.79.3:
+ version "1.79.3"
+ resolved "https://registry.yarnpkg.com/sass/-/sass-1.79.3.tgz#7811b000eb68195fe51dea89177e73e7ef7f546f"
+ integrity sha512-m7dZxh0W9EZ3cw50Me5GOuYm/tVAJAn91SUnohLRo9cXBixGUOdvmryN+dXpwR831bhoY3Zv7rEFt85PUwTmzA==
dependencies:
- chokidar ">=3.0.0 <4.0.0"
+ chokidar "^4.0.0"
immutable "^4.0.0"
source-map-js ">=0.6.2 <2.0.0"
@@ -2852,6 +2859,11 @@ typed-array-length@^1.0.6:
is-typed-array "^1.1.13"
possible-typed-array-names "^1.0.0"
+typeface-inter@3.18.1:
+ version "3.18.1"
+ resolved "https://registry.yarnpkg.com/typeface-inter/-/typeface-inter-3.18.1.tgz#24cccdf29923f318589783997be20a662cd3ab9c"
+ integrity sha512-c+TBanYFCvmg3j5vPk+zxK4ocMZbPxMEmjnwG7rPQoV87xvQ6b07VbAOC0Va0XBbbZCGw6cWNeFuLeg1YQru3Q==
+
typeface-roboto-mono@1.1.13:
version "1.1.13"
resolved "https://registry.yarnpkg.com/typeface-roboto-mono/-/typeface-roboto-mono-1.1.13.tgz#2af8662db8f9119c00efd55d6ed8877d2a69ec94"
diff --git a/netbox/release.yaml b/netbox/release.yaml
index dd0cb6c71..3963fd542 100644
--- a/netbox/release.yaml
+++ b/netbox/release.yaml
@@ -1,3 +1,3 @@
-version: "4.1.1"
+version: "4.1.3"
edition: "Community"
-published: "2024-09-12"
+published: "2024-10-02"
diff --git a/netbox/templates/generic/_base.html b/netbox/templates/generic/_base.html
index 6c279b102..3bf6a53bb 100644
--- a/netbox/templates/generic/_base.html
+++ b/netbox/templates/generic/_base.html
@@ -10,7 +10,7 @@
{# Title #}
-
{% block title %}{% endblock title %}
+ {% block title %}{% endblock title %}
{% block subtitle %}{% endblock %}
diff --git a/netbox/templates/virtualization/cluster.html b/netbox/templates/virtualization/cluster.html
index ec5598b60..d79d8075c 100644
--- a/netbox/templates/virtualization/cluster.html
+++ b/netbox/templates/virtualization/cluster.html
@@ -69,7 +69,7 @@
{% trans "Disk Space" %} |
{% if disk_sum %}
- {{ disk_sum }} {% trans "GB" context "Abbreviation for gigabyte" %}
+ {{ disk_sum|humanize_megabytes }}
{% else %}
{{ ''|placeholder }}
{% endif %}
diff --git a/netbox/tenancy/api/nested_serializers.py b/netbox/tenancy/api/nested_serializers.py
index 5f339ecba..5adb78863 100644
--- a/netbox/tenancy/api/nested_serializers.py
+++ b/netbox/tenancy/api/nested_serializers.py
@@ -15,7 +15,7 @@ __all__ = [
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/tenancy/apps.py b/netbox/tenancy/apps.py
index 7fec97d73..d08d178e9 100644
--- a/netbox/tenancy/apps.py
+++ b/netbox/tenancy/apps.py
@@ -6,7 +6,7 @@ class TenancyConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
- from . import search
+ from . import search # noqa: F401
# Register models
register_models(*self.get_models())
diff --git a/netbox/tenancy/filtersets.py b/netbox/tenancy/filtersets.py
index 75096b00e..e2de18231 100644
--- a/netbox/tenancy/filtersets.py
+++ b/netbox/tenancy/filtersets.py
@@ -2,7 +2,6 @@ import django_filters
from django.db.models import Q
from django.utils.translation import gettext as _
-from extras.filters import TagFilter
from netbox.filtersets import NetBoxModelFilterSet, OrganizationalModelFilterSet
from utilities.filters import ContentTypeFilter, TreeNodeMultipleChoiceFilter
from .models import *
diff --git a/netbox/tenancy/graphql/mixins.py b/netbox/tenancy/graphql/mixins.py
index 8b4c41c9b..9cdba100e 100644
--- a/netbox/tenancy/graphql/mixins.py
+++ b/netbox/tenancy/graphql/mixins.py
@@ -1,8 +1,6 @@
from typing import Annotated, List
import strawberry
-import strawberry_django
-
__all__ = (
'ContactAssignmentsMixin',
@@ -12,4 +10,4 @@ __all__ = (
@strawberry.type
class ContactAssignmentsMixin:
- assignments: List[Annotated["ContactAssignmentType", strawberry.lazy('tenancy.graphql.types')]]
+ assignments: List[Annotated["ContactAssignmentType", strawberry.lazy('tenancy.graphql.types')]] # noqa: F821
diff --git a/netbox/translations/cs/LC_MESSAGES/django.mo b/netbox/translations/cs/LC_MESSAGES/django.mo
index f7fa75819..afb8ee4f2 100644
Binary files a/netbox/translations/cs/LC_MESSAGES/django.mo and b/netbox/translations/cs/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/cs/LC_MESSAGES/django.po b/netbox/translations/cs/LC_MESSAGES/django.po
index f47711368..f9b66f770 100644
--- a/netbox/translations/cs/LC_MESSAGES/django.po
+++ b/netbox/translations/cs/LC_MESSAGES/django.po
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Czech (https://app.transifex.com/netbox-community/teams/178115/cs/)\n"
@@ -87,8 +87,8 @@ msgstr "Vaše heslo bylo úspěšně změněno."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -101,7 +101,7 @@ msgstr "Zajišťování"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -112,8 +112,8 @@ msgid "Active"
msgstr "Aktivní"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Vypnuto"
@@ -126,7 +126,7 @@ msgstr "Zrušení přidělování"
msgid "Decommissioned"
msgstr "Vyřazeno z provozu"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Primární"
@@ -332,7 +332,7 @@ msgstr "Zakončení A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -570,8 +570,8 @@ msgstr "ID služby"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -608,7 +608,7 @@ msgstr "Barva"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -665,8 +665,8 @@ msgstr "Účet poskytovatele"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -815,7 +815,7 @@ msgstr "Parametry služby"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1397,11 +1397,11 @@ msgstr "sítě poskytovatelů"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1539,7 +1539,7 @@ msgstr "Míra odevzdání"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1618,7 +1618,7 @@ msgstr "Dokončeno"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Neuspěl"
@@ -1943,7 +1943,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr "Výšky stojanů"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2516,7 +2516,7 @@ msgid "Staging"
msgstr "Inscenace"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Vyřazení z provozu"
@@ -2580,7 +2580,7 @@ msgstr "Zastaralé"
msgid "Millimeters"
msgstr "Milimetry"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "palce"
@@ -2602,9 +2602,9 @@ msgstr "Zezadu dopředu"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2634,15 +2634,15 @@ msgstr "Rodič"
msgid "Child"
msgstr "Dítě"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Fronta"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2670,7 +2670,7 @@ msgid "Side to rear"
msgstr "Ze strany dozadu"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "pasivní"
@@ -2678,15 +2678,15 @@ msgstr "pasivní"
msgid "Mixed"
msgstr "Smíšené"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (bez blokování)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (zamykání)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Kalifornský styl"
@@ -2694,42 +2694,42 @@ msgstr "Kalifornský styl"
msgid "International/ITA"
msgstr "Mezinárodní/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Proprietární"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Ostatní"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/Mezinárodní"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Fyzické"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Virtuální"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Bezdrátové"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Virtuální rozhraní"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2739,27 +2739,27 @@ msgstr "Virtuální rozhraní"
msgid "Bridge"
msgstr "Most"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Agregační skupina (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (pevný)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modulární)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (propojovací deska)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Buněčný"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2767,129 +2767,130 @@ msgstr "Buněčný"
msgid "Serial"
msgstr "Sériový"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Koaxiální"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Stohování"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Poloviční"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Plný"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Auto"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Přístup"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Označeno"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Označeno (Vše)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "Norma IEEE"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Pasivní 24V (2 páry)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Pasivní 24V (4 páry)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Pasivní 48V (2 páry)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Pasivní 48V (4 páry)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "měď"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Optická vlákna"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Vlákno"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Připojeno"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Kilometry"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Metry"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Centimetry"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Míle"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Stopy"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Kilogramy"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Gramy"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "libry"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Unce"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Redundantní"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Jednofázový"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Třífázový"
@@ -3259,7 +3260,7 @@ msgstr "Přiřazené VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3338,7 +3339,7 @@ msgid "LAG interface (ID)"
msgstr "Rozhraní LAG (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Kontext virtuálního zařízení"
@@ -3413,7 +3414,7 @@ msgstr "Značky"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3460,9 +3461,9 @@ msgstr "Časové pásmo"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3586,9 +3587,9 @@ msgstr "Číslování"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3678,7 +3679,7 @@ msgstr "Stojan"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Hardware"
@@ -3786,15 +3787,15 @@ msgstr "Nástupiště"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3938,7 +3939,7 @@ msgstr "Přidělený příkon (W)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Napájecí port"
@@ -4026,14 +4027,14 @@ msgstr "Režim"
msgid "VLAN group"
msgstr "Skupina VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "Neznačené VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4052,7 +4053,7 @@ msgid "Wireless LANs"
msgstr "Bezdrátové LAN sítě"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4061,24 +4062,24 @@ msgid "Addressing"
msgstr "Adresování"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Operace"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Související rozhraní"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4417,7 +4418,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} není přiřazen k zařízení {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Zadní port"
@@ -4431,7 +4432,7 @@ msgstr "Odpovídající zadní port"
msgid "Physical medium classification"
msgstr "Klasifikace fyzického média"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Nainstalované zařízení"
@@ -4520,7 +4521,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "Zakončení strany {side_upper} nebylo nalezeno: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4550,6 +4551,28 @@ msgstr "Typ napájení (AC/DC)"
msgid "Single or three-phase"
msgstr "Jednofázové nebo třífázové"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "Primární IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "IPv4 adresa s maskou, např. 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "Primární IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "IPv6 adresa s délkou předpony, např. 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4712,7 +4735,7 @@ msgstr "Druh"
msgid "Mgmt only"
msgstr "Pouze správa"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4746,7 +4769,7 @@ msgstr "Vysílací výkon (dBm)"
msgid "Cable"
msgstr "Kabel"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "objeveno"
@@ -4843,8 +4866,8 @@ msgstr "Šablona napájecího portu"
msgid "Rear port template"
msgstr "Šablona zadního portu"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4868,7 +4891,7 @@ msgstr "Šablona zadního portu"
msgid "Interface"
msgstr "Rozhraní"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4876,14 +4899,14 @@ msgstr "Rozhraní"
msgid "Console Port"
msgstr "Port konzoly"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Port konzolového serveru"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4894,8 +4917,8 @@ msgstr "Port konzolového serveru"
msgid "Front Port"
msgstr "Přední port"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4907,24 +4930,24 @@ msgstr "Přední port"
msgid "Rear Port"
msgstr "Zadní port"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Napájecí port"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Napájecí zásuvka"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Přiřazení komponent"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "InventoryItem lze přiřadit pouze k jedné komponentě."
@@ -4932,11 +4955,15 @@ msgstr "InventoryItem lze přiřadit pouze k jedné komponentě."
msgid "LAG interface"
msgstr "Rozhraní LAG"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filtrujte sítě VLAN dostupné pro přiřazení podle skupiny."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Podřazené zařízení"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4944,44 +4971,32 @@ msgstr ""
"Podřízená zařízení musí být nejprve vytvořena a přiřazena k staveništi a "
"stojanu nadřazeného zařízení."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Port konzoly"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Port konzolového serveru"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Přední port"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Napájecí zásuvka"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Položka inventáře"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Role položky inventáře"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "Primární IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "Primární IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5039,7 +5054,7 @@ msgstr ""
"Počet předních portů, které mají být vytvořeny ({frontport_count}), musí "
"odpovídat zvolenému počtu pozic zadních portů ({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6615,7 +6630,7 @@ msgstr "Konfigurační šablona"
msgid "Site Group"
msgstr "Skupina stránek"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6624,12 +6639,12 @@ msgstr "Skupina stránek"
msgid "IP Address"
msgstr "IP adresa"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "IPv4 Adresa"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "Adresa IPv6"
@@ -6667,7 +6682,7 @@ msgstr "Napájecí porty"
msgid "Power outlets"
msgstr "Elektrické zásuvky"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6774,28 +6789,28 @@ msgstr "Pouze správa"
msgid "VDCs"
msgstr "VDC"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Instalovaný modul"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Sériový modul"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Štítek aktiv modulu"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Stav modulu"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Komponenta"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Položky"
@@ -10362,7 +10377,7 @@ msgstr "Rozsahy musí být specifikovány ve formuláři (dolní, horní)."
msgid "Range boundaries must be defined as integers."
msgstr "Hranice rozsahu musí být definovány jako celá čísla."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} musí implementovat get_view_name ()"
@@ -10712,32 +10727,32 @@ msgstr "Vlastní pole '{name}Musí mít jedinečnou hodnotu."
msgid "Missing required custom field '{name}'."
msgstr "Chybí povinné vlastní pole '{name}„."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Vzdálený zdroj dat"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "datová cesta"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Cesta ke vzdálenému souboru (vzhledem k kořenovému zdroji dat)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "automatická synchronizace povolena"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Povolit automatickou synchronizaci dat při aktualizaci datového souboru"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "datum synchronizováno"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} musí implementovat metodu sync_data ()."
@@ -12472,7 +12487,7 @@ msgid "Parent Bay"
msgstr "Mateřská zátoka"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Regenerujte slimáka"
@@ -12817,17 +12832,17 @@ msgstr "Maximální hmotnost"
msgid "Total Weight"
msgstr "Celková hmotnost"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Obrázky a štítky"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Pouze obrázky"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Pouze štítky"
@@ -15099,15 +15114,15 @@ msgstr "Odhlásit"
msgid "Subscribe"
msgstr "Přihlásit"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Kopírovat do schránky"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Toto pole je povinné"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Nastavit Null"
diff --git a/netbox/translations/da/LC_MESSAGES/django.mo b/netbox/translations/da/LC_MESSAGES/django.mo
index 3164f50af..18e2f6863 100644
Binary files a/netbox/translations/da/LC_MESSAGES/django.mo and b/netbox/translations/da/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/da/LC_MESSAGES/django.po b/netbox/translations/da/LC_MESSAGES/django.po
index 12bd7ff98..a3eb24b39 100644
--- a/netbox/translations/da/LC_MESSAGES/django.po
+++ b/netbox/translations/da/LC_MESSAGES/django.po
@@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Danish (https://app.transifex.com/netbox-community/teams/178115/da/)\n"
@@ -89,8 +89,8 @@ msgstr "Din adgangskode er blevet ændret."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -103,7 +103,7 @@ msgstr "Opretter"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -114,8 +114,8 @@ msgid "Active"
msgstr "Aktiv"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Offline"
@@ -128,7 +128,7 @@ msgstr "Nedlægger"
msgid "Decommissioned"
msgstr "Nedlagt"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Primær"
@@ -334,7 +334,7 @@ msgstr "Afslutning A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -572,8 +572,8 @@ msgstr "Tjeneste-id"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -610,7 +610,7 @@ msgstr "Farve"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -667,8 +667,8 @@ msgstr "Leverandørkonto"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -817,7 +817,7 @@ msgstr "Serviceparametre"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -900,7 +900,7 @@ msgstr "Tildelt leverandørkonto"
#: netbox/circuits/forms/bulk_import.py:91
msgid "Type of circuit"
-msgstr "Type kredsløb"
+msgstr "Kredsløbstype"
#: netbox/circuits/forms/bulk_import.py:96 netbox/dcim/forms/bulk_import.py:90
#: netbox/dcim/forms/bulk_import.py:149 netbox/dcim/forms/bulk_import.py:250
@@ -1340,7 +1340,7 @@ msgstr ""
#: netbox/vpn/models/crypto.py:221 netbox/vpn/models/l2vpn.py:22
#: netbox/vpn/models/tunnels.py:35 netbox/wireless/models.py:51
msgid "name"
-msgstr "navngive"
+msgstr "navn"
#: netbox/circuits/models/providers.py:25
msgid "Full name of the provider"
@@ -1400,11 +1400,11 @@ msgstr "leverandørnetværk"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1542,7 +1542,7 @@ msgstr "Forpligtelsesrate"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1580,7 +1580,7 @@ msgstr "Konti"
#: netbox/circuits/tables/providers.py:29
msgid "Account Count"
-msgstr "Kontotælling"
+msgstr "Kontoantal"
#: netbox/circuits/tables/providers.py:39 netbox/dcim/tables/sites.py:100
msgid "ASN Count"
@@ -1621,7 +1621,7 @@ msgstr "Afsluttet"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Mislykkedes"
@@ -1945,7 +1945,7 @@ msgstr "Skal uploade en fil eller vælge en datafil, der skal synkroniseres"
msgid "Rack Elevations"
msgstr "Rackhøjder"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2432,7 +2432,7 @@ msgstr "Ingen opgaver fundet"
#: netbox/core/tables/tasks.py:118 netbox/templates/core/rq_worker.html:47
msgid "State"
-msgstr "Stat"
+msgstr "Tilstand"
#: netbox/core/tables/tasks.py:121 netbox/templates/core/rq_worker.html:51
msgid "Birth"
@@ -2520,7 +2520,7 @@ msgid "Staging"
msgstr "Iscenesættelse"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Nedlæggelse"
@@ -2531,7 +2531,7 @@ msgstr "Pensioneret"
#: netbox/dcim/choices.py:65
msgid "2-post frame"
-msgstr "2-post ramme"
+msgstr "2-stolpe ramme"
#: netbox/dcim/choices.py:66
msgid "4-post frame"
@@ -2584,7 +2584,7 @@ msgstr "Forældet"
msgid "Millimeters"
msgstr "Millimeter"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Tommer"
@@ -2606,9 +2606,9 @@ msgstr "Bagsiden til forsiden"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2638,15 +2638,15 @@ msgstr "Forælder"
msgid "Child"
msgstr "Barn"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Front"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2659,7 +2659,7 @@ msgstr "Iscenesat"
#: netbox/dcim/choices.py:188
msgid "Inventory"
-msgstr "Opgørelse"
+msgstr "Inventar"
#: netbox/dcim/choices.py:206 netbox/dcim/choices.py:250
msgid "Left to right"
@@ -2674,7 +2674,7 @@ msgid "Side to rear"
msgstr "Side til bagside"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Passiv"
@@ -2682,15 +2682,15 @@ msgstr "Passiv"
msgid "Mixed"
msgstr "Blandet"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (Ikke-låsende)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (Låsning)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Californiens stil"
@@ -2698,42 +2698,42 @@ msgstr "Californiens stil"
msgid "International/ITA"
msgstr "International/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Proprietær"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Andet"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/International"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Fysisk"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Virtuel"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Trådløs"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Virtuelle grænseflader"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2743,27 +2743,27 @@ msgstr "Virtuelle grænseflader"
msgid "Bridge"
msgstr "Bro"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Link Aggregation Group (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (fast)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modulopbygget)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (bagplan)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Cellulær"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2771,131 +2771,132 @@ msgstr "Cellulær"
msgid "Serial"
msgstr "Seriel"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Koaksial"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Stabling"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Halvdelen"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Fuld"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Auto"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Adgang"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Markeret"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Tagget (Alle)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "IEEE-standard"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Passiv 24V (2-par)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Passiv 24V (4-par)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Passiv 48V (2-par)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Passiv 48V (4-par)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Kobber"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Fiberoptisk"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
-msgstr "Fibre"
+msgstr "Fiber"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Tilsluttet"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Kilometer"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Meter"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Centimeter"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
-msgstr "Miles"
+msgstr "Mil"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
-msgstr "Fødder"
+msgstr "Fod"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Kilogram"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Gram"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "pund"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Ounce"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Redundant"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Enkeltfase"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
-msgstr "trefaset"
+msgstr "Trefaset"
#: netbox/dcim/fields.py:45
#, python-brace-format
@@ -2934,7 +2935,7 @@ msgstr "Gruppe (slug)"
#: netbox/dcim/filtersets.py:176 netbox/dcim/filtersets.py:181
msgid "AS (ID)"
-msgstr "SOM (ID)"
+msgstr "AS (ID)"
#: netbox/dcim/filtersets.py:246
msgid "Parent location (ID)"
@@ -2974,7 +2975,7 @@ msgstr "Producent (slug)"
#: netbox/dcim/filtersets.py:393
msgid "Rack type (slug)"
-msgstr "Stativtype (snegle)"
+msgstr "Racktype (slug)"
#: netbox/dcim/filtersets.py:397
msgid "Rack type (ID)"
@@ -3263,7 +3264,7 @@ msgstr "Tildelt VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3342,7 +3343,7 @@ msgid "LAG interface (ID)"
msgstr "LAG-grænseflade (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Virtuel enhedskontekst"
@@ -3417,7 +3418,7 @@ msgstr "Mærker"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3464,9 +3465,9 @@ msgstr "Tidszone"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3590,9 +3591,9 @@ msgstr "Nummerering"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3676,13 +3677,13 @@ msgstr "Luftstrøm"
#: netbox/templates/dcim/rackreservation.html:36
#: netbox/virtualization/forms/model_forms.py:113
msgid "Rack"
-msgstr "Stativ"
+msgstr "Rack"
#: netbox/dcim/forms/bulk_edit.py:444 netbox/dcim/forms/bulk_edit.py:730
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Hardware"
@@ -3790,15 +3791,15 @@ msgstr "Platformen"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3942,7 +3943,7 @@ msgstr "Allokeret forbrug (watt)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Strømstik"
@@ -4030,14 +4031,14 @@ msgstr "Tilstand"
msgid "VLAN group"
msgstr "VLAN-gruppe"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "Umærket VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4056,7 +4057,7 @@ msgid "Wireless LANs"
msgstr "Trådløse LAN"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4065,24 +4066,24 @@ msgid "Addressing"
msgstr "Adressering"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Betjening"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Relaterede grænseflader"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4140,7 +4141,7 @@ msgstr "Producenten af denne racktype"
#: netbox/dcim/forms/bulk_import.py:196
msgid "The lowest-numbered position in the rack"
-msgstr "Den laveste nummererede position i stativet"
+msgstr "Den laveste nummererede position i racket"
#: netbox/dcim/forms/bulk_import.py:201 netbox/dcim/forms/bulk_import.py:268
msgid "Rail-to-rail width (in inches)"
@@ -4152,7 +4153,7 @@ msgstr "Enhed til udvendige mål"
#: netbox/dcim/forms/bulk_import.py:213 netbox/dcim/forms/bulk_import.py:286
msgid "Unit for rack weights"
-msgstr "Enhed til stativvægte"
+msgstr "Enhed til rackvægte"
#: netbox/dcim/forms/bulk_import.py:245
msgid "Name of assigned tenant"
@@ -4173,7 +4174,7 @@ msgstr "Overordnet område"
#: netbox/dcim/forms/bulk_import.py:319 netbox/dcim/forms/bulk_import.py:1355
msgid "Rack's location (if any)"
-msgstr "Stativets placering (hvis nogen)"
+msgstr "Rackets placering (hvis nogen)"
#: netbox/dcim/forms/bulk_import.py:328 netbox/dcim/forms/model_forms.py:311
#: netbox/dcim/tables/racks.py:222
@@ -4269,7 +4270,7 @@ msgstr "Tildelt placering (hvis nogen)"
#: netbox/dcim/forms/bulk_import.py:557
msgid "Assigned rack (if any)"
-msgstr "Tildelt stativ (hvis et sådant findes)"
+msgstr "Tildelt rack (hvis et sådant findes)"
#: netbox/dcim/forms/bulk_import.py:560
msgid "Face"
@@ -4277,7 +4278,7 @@ msgstr "Ansigt"
#: netbox/dcim/forms/bulk_import.py:563
msgid "Mounted rack face"
-msgstr "Monteret stativflade"
+msgstr "Monteret rackflade"
#: netbox/dcim/forms/bulk_import.py:570
msgid "Parent device (for child devices)"
@@ -4421,7 +4422,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} er ikke tildelt enheden {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Bageste port"
@@ -4435,7 +4436,7 @@ msgstr "Tilsvarende bagport"
msgid "Physical medium classification"
msgstr "Klassificering af fysisk medium"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Installeret enhed"
@@ -4525,7 +4526,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} sideafslutning ikke fundet: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4555,6 +4556,28 @@ msgstr "Forsyningstype (AC/DC)"
msgid "Single or three-phase"
msgstr "Enkelt- eller trefaset"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "Primær IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "IP-adresse med maske, fx 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "Primær IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "IPv6-adresse med præfix-længde, fx 2001:db8::1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4640,7 +4663,7 @@ msgstr "Faciliteterne"
#: netbox/dcim/forms/filtersets.py:380
msgid "Rack type"
-msgstr "Stativtype"
+msgstr "Racktype"
#: netbox/dcim/forms/filtersets.py:397
msgid "Function"
@@ -4717,7 +4740,7 @@ msgstr "Venlig"
msgid "Mgmt only"
msgstr "Kun Mgmt"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4751,7 +4774,7 @@ msgstr "Sendeeffekt (dBm)"
msgid "Cable"
msgstr "Kabel"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Opdaget"
@@ -4849,8 +4872,8 @@ msgstr "Strømstikskabelon"
msgid "Rear port template"
msgstr "Bagport skabelon"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4874,7 +4897,7 @@ msgstr "Bagport skabelon"
msgid "Interface"
msgstr "Grænseflade"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4882,14 +4905,14 @@ msgstr "Grænseflade"
msgid "Console Port"
msgstr "Konsolport"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Konsolserverport"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4900,8 +4923,8 @@ msgstr "Konsolserverport"
msgid "Front Port"
msgstr "Frontport"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4913,24 +4936,24 @@ msgstr "Frontport"
msgid "Rear Port"
msgstr "Bageste port"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Strømstik"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Strømudtag"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Komponenttildeling"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "En InventoryItem kan kun tildeles til en enkelt komponent."
@@ -4938,11 +4961,15 @@ msgstr "En InventoryItem kan kun tildeles til en enkelt komponent."
msgid "LAG interface"
msgstr "LAG-grænseflade"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filtrer VLAN'er, der er tilgængelige til tildeling efter gruppe."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Børneenhed"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4950,44 +4977,32 @@ msgstr ""
"Underordnede enheder skal først oprettes og tildeles til den overordnede "
"enheds område og rack."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Konsolport"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Konsolserverport"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Frontport"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Strømudtag"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Lagergenstand"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Lagervarrolle"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "Primær IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "Primær IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5044,7 +5059,7 @@ msgstr ""
"Antallet af frontporte, der skal oprettes ({frontport_count}) skal matche "
"det valgte antal bageste portpositioner ({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -5907,7 +5922,7 @@ msgid ""
"Device {device} in rack {rack} does not have sufficient space to accommodate"
" a height of {height}U"
msgstr ""
-"Enhed {device} i stativ {rack} har ikke tilstrækkelig plads til at rumme en "
+"Enhed {device} i rack {rack} har ikke tilstrækkelig plads til at rumme en "
"højde på {height}U"
#: netbox/dcim/models/devices.py:322
@@ -5918,7 +5933,7 @@ msgid ""
msgstr ""
"Kan ikke indstille 0U højde: Fundet {racked_instance_count} tilfælde allerede monteret i "
-"stativer."
+"racker."
#: netbox/dcim/models/devices.py:331
msgid ""
@@ -5982,7 +5997,7 @@ msgstr "position (U)"
#: netbox/dcim/models/devices.py:650
msgid "rack face"
-msgstr "stativflade"
+msgstr "rackflade"
#: netbox/dcim/models/devices.py:670 netbox/dcim/models/devices.py:1408
#: netbox/virtualization/models/virtualmachines.py:100
@@ -6042,7 +6057,7 @@ msgstr "enheder"
#: netbox/dcim/models/devices.py:835
#, python-brace-format
msgid "Rack {rack} does not belong to site {site}."
-msgstr "Stativ {rack} hører ikke til område {site}."
+msgstr "Rack {rack} hører ikke til område {site}."
#: netbox/dcim/models/devices.py:840
#, python-brace-format
@@ -6052,7 +6067,7 @@ msgstr "Lokation {location} hører ikke til området {site}."
#: netbox/dcim/models/devices.py:846
#, python-brace-format
msgid "Rack {rack} does not belong to location {location}."
-msgstr "Stativ {rack} hører ikke til placering {location}."
+msgstr "Rack {rack} hører ikke til placering {location}."
#: netbox/dcim/models/devices.py:853
msgid "Cannot select a rack face without assigning a rack."
@@ -6277,8 +6292,8 @@ msgid ""
"Rack {rack} ({rack_site}) and power panel {powerpanel} ({powerpanel_site}) "
"are in different sites."
msgstr ""
-"Stativ {rack} ({rack_site}) og strømpanel {powerpanel} ({powerpanel_site}) "
-"er på forskellige områder."
+"Rack {rack} ({rack_site}) og strømpanel {powerpanel} ({powerpanel_site}) er "
+"på forskellige områder."
#: netbox/dcim/models/power.py:190
msgid "Voltage cannot be negative for AC supply"
@@ -6302,7 +6317,7 @@ msgstr "startenhed"
#: netbox/dcim/models/racks.py:62
msgid "Starting unit for rack"
-msgstr "Startenhed til stativ"
+msgstr "Startenhed til rack"
#: netbox/dcim/models/racks.py:66
msgid "descending units"
@@ -6318,7 +6333,7 @@ msgstr "ydre bredde"
#: netbox/dcim/models/racks.py:75
msgid "Outer dimension of rack (width)"
-msgstr "Udvendig dimension af reol (bredde)"
+msgstr "Udvendig dimension af rack (bredde)"
#: netbox/dcim/models/racks.py:78
msgid "outer depth"
@@ -6326,7 +6341,7 @@ msgstr "ydre dybde"
#: netbox/dcim/models/racks.py:81
msgid "Outer dimension of rack (depth)"
-msgstr "Udvendig dimension af reol (dybde)"
+msgstr "Udvendig dimension af rack (dybde)"
#: netbox/dcim/models/racks.py:84
msgid "outer unit"
@@ -6358,11 +6373,11 @@ msgstr "formfaktor"
#: netbox/dcim/models/racks.py:162
msgid "rack type"
-msgstr "stativtype"
+msgstr "racktype"
#: netbox/dcim/models/racks.py:163
msgid "rack types"
-msgstr "stativtyper"
+msgstr "racktyper"
#: netbox/dcim/models/racks.py:180 netbox/dcim/models/racks.py:379
msgid "Must specify a unit when setting an outer width/depth"
@@ -6374,11 +6389,11 @@ msgstr "Skal angive en enhed, når der indstilles en maksimal vægt"
#: netbox/dcim/models/racks.py:230
msgid "rack role"
-msgstr "stativrolle"
+msgstr "rackrolle"
#: netbox/dcim/models/racks.py:231
msgid "rack roles"
-msgstr "stativroller"
+msgstr "rackroller"
#: netbox/dcim/models/racks.py:274
msgid "facility ID"
@@ -6401,7 +6416,7 @@ msgstr "Et unikt tag, der bruges til at identificere dette rack"
#: netbox/dcim/models/racks.py:359
msgid "rack"
-msgstr "stativ"
+msgstr "rack"
#: netbox/dcim/models/racks.py:360
msgid "racks"
@@ -6575,11 +6590,11 @@ msgstr "Sted B"
#: netbox/dcim/tables/cables.py:90
msgid "Rack A"
-msgstr "Stativ A"
+msgstr "Rack A"
#: netbox/dcim/tables/cables.py:96
msgid "Rack B"
-msgstr "Stativ B"
+msgstr "Rack B"
#: netbox/dcim/tables/cables.py:102
msgid "Site A"
@@ -6630,7 +6645,7 @@ msgstr "Konfigurationsskabelon"
msgid "Site Group"
msgstr "Områdegruppe"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6639,12 +6654,12 @@ msgstr "Områdegruppe"
msgid "IP Address"
msgstr "IP adresse"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "IPv4-adresse"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "IPv6-adresse"
@@ -6682,7 +6697,7 @@ msgstr "Strømstik"
msgid "Power outlets"
msgstr "Strømudtag"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6789,28 +6804,28 @@ msgstr "Kun ledelse"
msgid "VDCs"
msgstr "VDC'er"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Installeret modul"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Seriel modul"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Modulaktivmærke"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Modulstatus"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Komponent"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Varer"
@@ -6949,7 +6964,7 @@ msgstr "Tilgængelig effekt (VA)"
#: netbox/netbox/navigation/menu.py:43 netbox/netbox/navigation/menu.py:47
#: netbox/netbox/navigation/menu.py:49
msgid "Racks"
-msgstr "Stativer"
+msgstr "Racker"
#: netbox/dcim/tables/racks.py:63 netbox/dcim/tables/racks.py:142
#: netbox/templates/dcim/device.html:318
@@ -10389,7 +10404,7 @@ msgstr "Intervaller skal specificeres i formularen (nedre, øvre)."
msgid "Range boundaries must be defined as integers."
msgstr "Områdegrænser skal defineres som heltal."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} skal implementere get_view_name ()"
@@ -10742,31 +10757,31 @@ msgstr "Brugerdefineret felt '{name}“ skal have en unik værdi."
msgid "Missing required custom field '{name}'."
msgstr "Mangler påkrævet brugerdefineret felt '{name}„."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Fjerndatakilde"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "datastie"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Sti til fjernfil (i forhold til datakildens rod)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "automatisk synkronisering aktiveret"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr "Aktivér automatisk synkronisering af data, når datafilen opdateres"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "dato synkroniseret"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} skal implementere en sync_data () metode."
@@ -11523,7 +11538,7 @@ msgstr "Annuller"
#: netbox/utilities/templates/helpers/applied_filters.html:16
#: netbox/utilities/templates/helpers/table_config_form.html:40
msgid "Save"
-msgstr "Gemme"
+msgstr "Gem"
#: netbox/templates/account/preferences.html:34
msgid "Table Configurations"
@@ -12507,7 +12522,7 @@ msgid "Parent Bay"
msgstr "Forældrebugten"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Regenerer slug"
@@ -12842,7 +12857,7 @@ msgstr "Rumudnyttelse"
#: netbox/templates/dcim/rack.html:84 netbox/templates/dcim/racktype.html:44
msgid "Rack Weight"
-msgstr "Stativvægt"
+msgstr "Rackvægt"
#: netbox/templates/dcim/rack.html:94 netbox/templates/dcim/racktype.html:54
msgid "Maximum Weight"
@@ -12852,17 +12867,17 @@ msgstr "Maksimal vægt"
msgid "Total Weight"
msgstr "Samlet vægt"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Billeder og etiketter"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Kun billeder"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Kun etiketter"
@@ -12885,7 +12900,7 @@ msgstr "Sorter efter"
#: netbox/templates/dcim/rack_elevation_list.html:74
msgid "No Racks Found"
-msgstr "Ingen stativer fundet"
+msgstr "Ingen racker fundet"
#: netbox/templates/dcim/rack_list.html:8
msgid "View Elevations"
@@ -15141,15 +15156,15 @@ msgstr "Afmeld"
msgid "Subscribe"
msgstr "Abonner"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Kopier til udklipsholder"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Dette felt er påkrævet"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Indstil Null"
diff --git a/netbox/translations/de/LC_MESSAGES/django.mo b/netbox/translations/de/LC_MESSAGES/django.mo
index 1d183326e..cd38fed98 100644
Binary files a/netbox/translations/de/LC_MESSAGES/django.mo and b/netbox/translations/de/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/de/LC_MESSAGES/django.po b/netbox/translations/de/LC_MESSAGES/django.po
index 967459e73..c8c7e2a55 100644
--- a/netbox/translations/de/LC_MESSAGES/django.po
+++ b/netbox/translations/de/LC_MESSAGES/django.po
@@ -8,19 +8,19 @@
# Niklas, 2024
# fepilins, 2024
# Steffen, 2024
-# Robin Reinhardt, 2024
# Uli Haage, 2024
-# chbally, 2024
# Jeremy Stretch, 2024
+# Robin Reinhardt, 2024
+# chbally, 2024
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
-"Last-Translator: Jeremy Stretch, 2024\n"
+"Last-Translator: chbally, 2024\n"
"Language-Team: German (https://app.transifex.com/netbox-community/teams/178115/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -94,8 +94,8 @@ msgstr "Dein Passwort wurde erfolgreich geändert."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -108,7 +108,7 @@ msgstr "Provisionierung"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -119,8 +119,8 @@ msgid "Active"
msgstr "Aktiv"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Offline"
@@ -133,7 +133,7 @@ msgstr "Deprovisionierung"
msgid "Decommissioned"
msgstr "Stillgelegt"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Primär"
@@ -339,7 +339,7 @@ msgstr "Abschlusspunkt A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -577,8 +577,8 @@ msgstr "Dienst ID"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -615,7 +615,7 @@ msgstr "Farbe"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -672,8 +672,8 @@ msgstr "Providerkonto"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -822,7 +822,7 @@ msgstr "Service Parameter"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1406,11 +1406,11 @@ msgstr "Providernetzwerke"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1548,7 +1548,7 @@ msgstr "Garantierte Bandbreite"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1628,7 +1628,7 @@ msgstr "Abgeschlossen"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Fehlgeschlagen"
@@ -1955,7 +1955,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr "Rackübersichten"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2368,7 +2368,7 @@ msgstr "Zuletzt aktualisiert"
#: netbox/core/tables/plugins.py:23
msgid "Minimum NetBox Version"
-msgstr "Minimale Netboxversion"
+msgstr "Minimale Netbox-Version"
#: netbox/core/tables/plugins.py:27
msgid "Maximum NetBox Version"
@@ -2400,7 +2400,7 @@ msgstr "Installierte Version"
#: netbox/core/tables/plugins.py:70
msgid "Latest Version"
-msgstr "Letzte Version"
+msgstr "Neuste Version"
#: netbox/core/tables/tasks.py:18
msgid "Oldest Task"
@@ -2536,7 +2536,7 @@ msgid "Staging"
msgstr "Bereitstellung"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Außerbetriebnahme"
@@ -2600,7 +2600,7 @@ msgstr "Veraltet"
msgid "Millimeters"
msgstr "Millimeter"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Zoll"
@@ -2622,9 +2622,9 @@ msgstr "Rück- zu Frontseite"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2654,15 +2654,15 @@ msgstr "Übergeordnet"
msgid "Child"
msgstr "Untergeordnet"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Frontseite"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2690,7 +2690,7 @@ msgid "Side to rear"
msgstr "Seite nach hinten"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Passiv"
@@ -2698,15 +2698,15 @@ msgstr "Passiv"
msgid "Mixed"
msgstr "Gemischt"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (nicht verriegelnd)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (verriegelnd)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Kalifornischer Stil"
@@ -2714,42 +2714,42 @@ msgstr "Kalifornischer Stil"
msgid "International/ITA"
msgstr "International/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Propritär"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Andere"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/International"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Physikalisch"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Virtuell"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Funknetze"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Virtuelle Schnittstellen"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2759,27 +2759,27 @@ msgstr "Virtuelle Schnittstellen"
msgid "Bridge"
msgstr "Bridge"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Link Aggregation Group (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (fest)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modular)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (Backplane)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Mobilfunk"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2787,129 +2787,130 @@ msgstr "Mobilfunk"
msgid "Serial"
msgstr "Seriell"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Koaxial"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Stapelnd"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Halb"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Voll"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Automatisch"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Untagged"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Tagged"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Tagged (Alle)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "IEEE-Standard"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Passiv 24 V (2 Paare)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Passiv 24 V (4 Paare)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Passiv 48 V (2 Paare)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Passiv 48 V (4 Paare)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Kupfer"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Glasfaser"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Faser"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Verbunden"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Kilometer"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Meter"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Zentimeter"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Meilen"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Fuß"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Kilogramm"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Gramm"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Pfund"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Unzen"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Redundant"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Einphasig"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Dreiphasig"
@@ -3279,7 +3280,7 @@ msgstr "Zugewiesene VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3358,7 +3359,7 @@ msgid "LAG interface (ID)"
msgstr "LAG-Schnittstelle (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Virtual Device Context"
@@ -3433,7 +3434,7 @@ msgstr "Tags"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3480,9 +3481,9 @@ msgstr "Zeitzone"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3606,9 +3607,9 @@ msgstr "Nummerierung"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3698,7 +3699,7 @@ msgstr "Rack"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Hardware"
@@ -3806,15 +3807,15 @@ msgstr "Betriebssystem"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3958,7 +3959,7 @@ msgstr "Zugewiesene Leistungsaufnahme (Watt)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Stromanschluss"
@@ -4046,14 +4047,14 @@ msgstr "Modus"
msgid "VLAN group"
msgstr "VLAN-Gruppe"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "Untagged VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4072,7 +4073,7 @@ msgid "Wireless LANs"
msgstr "WLANs"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4081,24 +4082,24 @@ msgid "Addressing"
msgstr "Adressierung"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Dienst / Port"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Verwandte Schnittstellen"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4441,7 +4442,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} ist dem Gerät {device} nicht zugewiesen"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Rückseitenanschluss"
@@ -4455,7 +4456,7 @@ msgstr "Entsprechender Rückanschluss"
msgid "Physical medium classification"
msgstr "Klassifizierung des physikalischen Mediums"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Installiertes Gerät"
@@ -4545,7 +4546,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} Seitlicher Abschluss nicht gefunden: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4575,6 +4576,28 @@ msgstr "Versorgungsart (AC/DC)"
msgid "Single or three-phase"
msgstr "Ein- oder Dreiphasig"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "Primäre IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "IPv4-Adresse mit Maske, z. B. 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "Primäre IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "IPv6-Adresse mit Präfixlänge, z. B. 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4739,7 +4762,7 @@ msgstr "Art"
msgid "Mgmt only"
msgstr "Nur Verwaltung"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4773,7 +4796,7 @@ msgstr "Sendeleistung (dBm)"
msgid "Cable"
msgstr "Kabel"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Erfasst"
@@ -4874,8 +4897,8 @@ msgstr "Vorlage für Stromverteiler"
msgid "Rear port template"
msgstr "Vorlage für den hinteren Anschluss"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4899,7 +4922,7 @@ msgstr "Vorlage für den hinteren Anschluss"
msgid "Interface"
msgstr "Schnittstelle"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4907,14 +4930,14 @@ msgstr "Schnittstelle"
msgid "Console Port"
msgstr "Konsolenanschluss"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Konsolenserveranschluss"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4925,8 +4948,8 @@ msgstr "Konsolenserveranschluss"
msgid "Front Port"
msgstr "Frontanschluss"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4938,24 +4961,24 @@ msgstr "Frontanschluss"
msgid "Rear Port"
msgstr "Rückanschluss"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Stromanschluss"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Stromabgang"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Komponentenzuweisung"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr ""
"Ein InventoryItem kann nur einer einzelnen Komponente zugewiesen werden."
@@ -4964,11 +4987,15 @@ msgstr ""
msgid "LAG interface"
msgstr "LAG-Schnittstelle"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filtern Sie VLANs, die für die Zuweisung nach Gruppen verfügbar sind."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "untergeordnetes Gerät"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4976,44 +5003,32 @@ msgstr ""
"Untergeordnete Geräte müssen zuerst erstellt und dem Standort und dem Rack "
"des übergeordneten Geräts zugewiesen werden."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Konsolenanschluss"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Konsolenserveranschluss"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Frontanschluss"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Stromabgang"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Inventar-Artikel"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Rolle des Inventarartikels"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "Primäre IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "Primäre IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5074,7 +5089,7 @@ msgstr ""
"der ausgewählten Anzahl der hinteren Anschlusspositionen übereinstimmen "
"({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -5139,7 +5154,7 @@ msgstr ""
#: netbox/dcim/models/cables.py:183
#, python-brace-format
msgid "Incompatible termination types: {type_a} and {type_b}"
-msgstr "Inkompatible Kündigungsarten: {type_a} und {type_b}"
+msgstr "Inkompatible Verbindungssarten: {type_a} und {type_b}"
#: netbox/dcim/models/cables.py:193
msgid "A and B terminations cannot connect to the same object."
@@ -5469,8 +5484,7 @@ msgstr "Das Kabelende darf nicht ohne Kabel verlegt werden."
#: netbox/dcim/models/device_components.py:179
msgid "Cannot mark as connected with a cable attached."
-msgstr ""
-"Mit angeschlossenem Kabel kann nicht als angeschlossen markiert werden."
+msgstr "Mit angeschlossenem Kabel kann nicht als verbunden markiert werden."
#: netbox/dcim/models/device_components.py:203
#, python-brace-format
@@ -5945,7 +5959,7 @@ msgstr ""
#: netbox/dcim/models/devices.py:123
msgid "parent/child status"
-msgstr "Eltern-/Kind-Status"
+msgstr "Über-/Untergeordnetenstatus"
#: netbox/dcim/models/devices.py:124
msgid ""
@@ -6731,7 +6745,7 @@ msgstr "Konfigvorlage"
msgid "Site Group"
msgstr "Standortgruppe"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6740,12 +6754,12 @@ msgstr "Standortgruppe"
msgid "IP Address"
msgstr "IP-Adresse"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "IPv4-Adresse"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "IPv6-Adresse"
@@ -6783,7 +6797,7 @@ msgstr "Stromanschlüsse"
msgid "Power outlets"
msgstr "Stromabgänge"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6890,28 +6904,28 @@ msgstr "Nur zur Verwaltung"
msgid "VDCs"
msgstr "VDCs"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Installiertes Modul"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Seriennummer des Moduls"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Modul-Asset-Tag"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Status des Moduls"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Komponente"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Artikel"
@@ -8535,12 +8549,12 @@ msgstr "Der Wert muss wahr oder falsch sein."
#: netbox/extras/models/customfields.py:696
msgid "Date values must be in ISO 8601 format (YYYY-MM-DD)."
-msgstr "Datumswerte müssen im ISO 8601-Format (JJJJ-MM-DD) vorliegen."
+msgstr "Datumswerte müssen im ISO 8601-Format (YYYY-MM-DD) vorliegen."
#: netbox/extras/models/customfields.py:705
msgid "Date and time values must be in ISO 8601 format (YYYY-MM-DD HH:MM:SS)."
msgstr ""
-"Datums- und Uhrzeitwerte müssen im ISO 8601-Format (JJJJ-MM-DD HH:MM:SS) "
+"Datums- und Uhrzeitwerte müssen im ISO 8601-Format (YYYY-MM-DD HH:MM:SS) "
"vorliegen."
#: netbox/extras/models/customfields.py:712
@@ -10563,7 +10577,7 @@ msgstr "Bereiche müssen in der Form (unten, oben) angegeben werden."
msgid "Range boundaries must be defined as integers."
msgstr "Bereichsgrenzen müssen als ganze Zahlen (Integer) definiert werden."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} muss get_view_name () implementieren"
@@ -10917,33 +10931,33 @@ msgstr "Benutzerdefiniertes Feld '{name}'muss einen eindeutigen Wert haben."
msgid "Missing required custom field '{name}'."
msgstr "Erforderliches benutzerdefiniertes Feld fehlt '{name}'."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Entfernte Datenquelle"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "Datenpfad"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Pfad zur Remote-Datei (relativ zum Stammverzeichnis)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "Auto-Sync aktiviert"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Automatische Synchronisation von Daten aktivieren, wenn die Datendatei "
"aktualisiert wird"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "Datum der Synchronisierung "
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} muss eine sync_data () -Methode implementieren."
@@ -11132,7 +11146,7 @@ msgstr "Clustergruppen"
#: netbox/netbox/navigation/menu.py:273
msgid "Circuit Types"
-msgstr "Transportnetz Typen"
+msgstr "Transportnetztypen"
#: netbox/netbox/navigation/menu.py:274
msgid "Circuit Groups"
@@ -11484,7 +11498,7 @@ msgstr "Ukrainisch"
#: netbox/netbox/settings.py:776
msgid "Chinese"
-msgstr "chinesisch"
+msgstr "Chinesisch"
#: netbox/netbox/tables/columns.py:176
msgid "Select all"
@@ -12695,7 +12709,7 @@ msgid "Parent Bay"
msgstr "Übergeordneter Einsatz"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "URL-Slug regenerieren"
@@ -12772,7 +12786,7 @@ msgstr "Von der Auslastung ausschließen"
#: netbox/templates/dcim/devicetype.html:59
msgid "Parent/Child"
-msgstr "Eltern/Kind"
+msgstr "Übergeordnet/Untergeordnet"
#: netbox/templates/dcim/devicetype.html:71
msgid "Front Image"
@@ -13040,17 +13054,17 @@ msgstr "Maximales Gewicht"
msgid "Total Weight"
msgstr "Gesamtgewicht"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Bilder und Beschriftungen"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Nur Bilder"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Nur Beschriftungen"
@@ -13705,7 +13719,7 @@ msgstr "Wert importieren"
#: netbox/templates/generic/bulk_import.html:181
msgid "Format: YYYY-MM-DD"
-msgstr "Format: JJJJ-MM-DD"
+msgstr "Format: YYYY-MM-DD"
#: netbox/templates/generic/bulk_import.html:183
msgid "Specify true or false"
@@ -15354,15 +15368,15 @@ msgstr "Nicht abonnieren"
msgid "Subscribe"
msgstr "Abonnieren"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "In die Zwischenablage kopieren"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Dieses Feld ist erforderlich"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Auf Null setzen"
diff --git a/netbox/translations/en/LC_MESSAGES/django.po b/netbox/translations/en/LC_MESSAGES/django.po
index 02e78c374..2880bf73f 100644
--- a/netbox/translations/en/LC_MESSAGES/django.po
+++ b/netbox/translations/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: 2024-09-25 05:02+0000\n"
+"POT-Creation-Date: 2024-10-11 05:02+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -82,8 +82,8 @@ msgstr ""
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
-#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
+#: netbox/dcim/choices.py:237 netbox/dcim/choices.py:1530
+#: netbox/dcim/choices.py:1606 netbox/dcim/choices.py:1656
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -95,8 +95,8 @@ msgstr ""
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
-#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
+#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:236
+#: netbox/dcim/choices.py:1605 netbox/dcim/choices.py:1655
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -107,8 +107,8 @@ msgid "Active"
msgstr ""
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
-#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:235 netbox/dcim/choices.py:1604
+#: netbox/dcim/choices.py:1657 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr ""
@@ -121,7 +121,7 @@ msgstr ""
msgid "Decommissioned"
msgstr ""
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1617
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr ""
@@ -188,7 +188,7 @@ msgstr ""
#: netbox/circuits/filtersets.py:56 netbox/circuits/forms/bulk_edit.py:188
#: netbox/circuits/forms/bulk_edit.py:216
-#: netbox/circuits/forms/bulk_import.py:125
+#: netbox/circuits/forms/bulk_import.py:124
#: netbox/circuits/forms/filtersets.py:51
#: netbox/circuits/forms/filtersets.py:171
#: netbox/circuits/forms/filtersets.py:209
@@ -327,13 +327,13 @@ msgstr ""
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:282
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
#: netbox/templates/ipam/ipaddress_assign.html:29
#: netbox/templates/search.html:7 netbox/templates/search.html:26
-#: netbox/tenancy/filtersets.py:100 netbox/users/filtersets.py:23
+#: netbox/tenancy/filtersets.py:99 netbox/users/filtersets.py:23
#: netbox/users/filtersets.py:57 netbox/users/filtersets.py:102
#: netbox/users/filtersets.py:150 netbox/utilities/forms/forms.py:104
#: netbox/utilities/templates/navigation/menu.html:16
@@ -342,7 +342,7 @@ msgstr ""
#: netbox/circuits/filtersets.py:264 netbox/circuits/forms/bulk_edit.py:172
#: netbox/circuits/forms/bulk_edit.py:246
-#: netbox/circuits/forms/bulk_import.py:116
+#: netbox/circuits/forms/bulk_import.py:115
#: netbox/circuits/forms/filtersets.py:198
#: netbox/circuits/forms/filtersets.py:214
#: netbox/circuits/forms/filtersets.py:260
@@ -522,9 +522,9 @@ msgstr ""
#: netbox/circuits/forms/bulk_edit.py:51 netbox/circuits/forms/bulk_edit.py:73
#: netbox/circuits/forms/bulk_edit.py:123
-#: netbox/circuits/forms/bulk_import.py:37
-#: netbox/circuits/forms/bulk_import.py:52
-#: netbox/circuits/forms/bulk_import.py:75
+#: netbox/circuits/forms/bulk_import.py:36
+#: netbox/circuits/forms/bulk_import.py:51
+#: netbox/circuits/forms/bulk_import.py:74
#: netbox/circuits/forms/filtersets.py:70
#: netbox/circuits/forms/filtersets.py:88
#: netbox/circuits/forms/filtersets.py:116
@@ -559,8 +559,8 @@ msgstr ""
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
-#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devices.py:761
+#: netbox/dcim/tables/devices.py:1003 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -573,7 +573,7 @@ msgid "Color"
msgstr ""
#: netbox/circuits/forms/bulk_edit.py:118
-#: netbox/circuits/forms/bulk_import.py:88
+#: netbox/circuits/forms/bulk_import.py:87
#: netbox/circuits/forms/filtersets.py:126 netbox/core/forms/bulk_edit.py:18
#: netbox/core/forms/filtersets.py:33 netbox/core/tables/change_logging.py:32
#: netbox/core/tables/data.py:20 netbox/core/tables/jobs.py:18
@@ -595,7 +595,7 @@ msgstr ""
#: netbox/dcim/forms/model_forms.py:703 netbox/dcim/forms/model_forms.py:709
#: netbox/dcim/forms/object_import.py:84 netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:814 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240 netbox/templates/circuits/circuit.html:30
@@ -627,14 +627,14 @@ msgid "Type"
msgstr ""
#: netbox/circuits/forms/bulk_edit.py:128
-#: netbox/circuits/forms/bulk_import.py:81
+#: netbox/circuits/forms/bulk_import.py:80
#: netbox/circuits/forms/filtersets.py:139
#: netbox/circuits/forms/model_forms.py:98
msgid "Provider account"
msgstr ""
#: netbox/circuits/forms/bulk_edit.py:136
-#: netbox/circuits/forms/bulk_import.py:94
+#: netbox/circuits/forms/bulk_import.py:93
#: netbox/circuits/forms/filtersets.py:150 netbox/core/forms/filtersets.py:38
#: netbox/core/forms/filtersets.py:79 netbox/core/tables/data.py:23
#: netbox/core/tables/jobs.py:26 netbox/core/tables/tasks.py:88
@@ -650,8 +650,8 @@ msgstr ""
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
-#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:817
+#: netbox/dcim/tables/devices.py:1063 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -703,8 +703,8 @@ msgstr ""
#: netbox/circuits/forms/bulk_edit.py:142
#: netbox/circuits/forms/bulk_edit.py:233
-#: netbox/circuits/forms/bulk_import.py:99
-#: netbox/circuits/forms/bulk_import.py:159
+#: netbox/circuits/forms/bulk_import.py:98
+#: netbox/circuits/forms/bulk_import.py:158
#: netbox/circuits/forms/filtersets.py:119
#: netbox/circuits/forms/filtersets.py:241 netbox/dcim/forms/bulk_edit.py:122
#: netbox/dcim/forms/bulk_edit.py:187 netbox/dcim/forms/bulk_edit.py:346
@@ -868,21 +868,21 @@ msgstr ""
msgid "Priority"
msgstr ""
-#: netbox/circuits/forms/bulk_import.py:40
-#: netbox/circuits/forms/bulk_import.py:55
-#: netbox/circuits/forms/bulk_import.py:78
+#: netbox/circuits/forms/bulk_import.py:39
+#: netbox/circuits/forms/bulk_import.py:54
+#: netbox/circuits/forms/bulk_import.py:77
msgid "Assigned provider"
msgstr ""
-#: netbox/circuits/forms/bulk_import.py:84
+#: netbox/circuits/forms/bulk_import.py:83
msgid "Assigned provider account"
msgstr ""
-#: netbox/circuits/forms/bulk_import.py:91
+#: netbox/circuits/forms/bulk_import.py:90
msgid "Type of circuit"
msgstr ""
-#: netbox/circuits/forms/bulk_import.py:96 netbox/dcim/forms/bulk_import.py:90
+#: netbox/circuits/forms/bulk_import.py:95 netbox/dcim/forms/bulk_import.py:90
#: netbox/dcim/forms/bulk_import.py:149 netbox/dcim/forms/bulk_import.py:250
#: netbox/dcim/forms/bulk_import.py:507 netbox/dcim/forms/bulk_import.py:661
#: netbox/dcim/forms/bulk_import.py:1373 netbox/ipam/forms/bulk_import.py:194
@@ -894,8 +894,8 @@ msgstr ""
msgid "Operational status"
msgstr ""
-#: netbox/circuits/forms/bulk_import.py:103
-#: netbox/circuits/forms/bulk_import.py:163
+#: netbox/circuits/forms/bulk_import.py:102
+#: netbox/circuits/forms/bulk_import.py:162
#: netbox/dcim/forms/bulk_import.py:111 netbox/dcim/forms/bulk_import.py:156
#: netbox/dcim/forms/bulk_import.py:338 netbox/dcim/forms/bulk_import.py:483
#: netbox/dcim/forms/bulk_import.py:1223 netbox/dcim/forms/bulk_import.py:1368
@@ -911,7 +911,7 @@ msgstr ""
msgid "Assigned tenant"
msgstr ""
-#: netbox/circuits/forms/bulk_import.py:121
+#: netbox/circuits/forms/bulk_import.py:120
#: netbox/templates/circuits/inc/circuit_termination.html:6
#: netbox/templates/circuits/inc/circuit_termination_fields.html:15
#: netbox/templates/dcim/cable.html:68 netbox/templates/dcim/cable.html:72
@@ -919,7 +919,7 @@ msgstr ""
msgid "Termination"
msgstr ""
-#: netbox/circuits/forms/bulk_import.py:131
+#: netbox/circuits/forms/bulk_import.py:130
#: netbox/circuits/forms/filtersets.py:147
#: netbox/circuits/forms/filtersets.py:227
#: netbox/circuits/forms/model_forms.py:144
@@ -1130,9 +1130,9 @@ msgstr ""
#: netbox/circuits/models/circuits.py:27 netbox/dcim/models/cables.py:67
#: netbox/dcim/models/device_component_templates.py:518
#: netbox/dcim/models/device_component_templates.py:618
-#: netbox/dcim/models/device_components.py:976
-#: netbox/dcim/models/device_components.py:1050
-#: netbox/dcim/models/device_components.py:1205
+#: netbox/dcim/models/device_components.py:975
+#: netbox/dcim/models/device_components.py:1049
+#: netbox/dcim/models/device_components.py:1204
#: netbox/dcim/models/devices.py:479 netbox/dcim/models/racks.py:224
#: netbox/extras/models/tags.py:28
msgid "color"
@@ -1155,7 +1155,7 @@ msgid "Unique circuit ID"
msgstr ""
#: netbox/circuits/models/circuits.py:69 netbox/core/models/data.py:52
-#: netbox/core/models/jobs.py:86 netbox/dcim/models/cables.py:49
+#: netbox/core/models/jobs.py:84 netbox/dcim/models/cables.py:49
#: netbox/dcim/models/devices.py:653 netbox/dcim/models/devices.py:1166
#: netbox/dcim/models/devices.py:1392 netbox/dcim/models/power.py:96
#: netbox/dcim/models/racks.py:297 netbox/dcim/models/sites.py:154
@@ -1251,7 +1251,7 @@ msgstr ""
#: netbox/circuits/models/circuits.py:281
#: netbox/dcim/models/device_component_templates.py:61
-#: netbox/dcim/models/device_components.py:69 netbox/dcim/models/racks.py:685
+#: netbox/dcim/models/device_components.py:68 netbox/dcim/models/racks.py:685
#: netbox/extras/models/configs.py:45 netbox/extras/models/configs.py:219
#: netbox/extras/models/customfields.py:125 netbox/extras/models/models.py:61
#: netbox/extras/models/models.py:158 netbox/extras/models/models.py:396
@@ -1285,9 +1285,9 @@ msgstr ""
#: netbox/circuits/models/providers.py:22
#: netbox/circuits/models/providers.py:66
#: netbox/circuits/models/providers.py:104 netbox/core/models/data.py:39
-#: netbox/core/models/jobs.py:47
+#: netbox/core/models/jobs.py:45
#: netbox/dcim/models/device_component_templates.py:43
-#: netbox/dcim/models/device_components.py:54 netbox/dcim/models/devices.py:593
+#: netbox/dcim/models/device_components.py:53 netbox/dcim/models/devices.py:593
#: netbox/dcim/models/devices.py:1323 netbox/dcim/models/devices.py:1388
#: netbox/dcim/models/power.py:39 netbox/dcim/models/power.py:92
#: netbox/dcim/models/racks.py:262 netbox/dcim/models/sites.py:138
@@ -1371,11 +1371,11 @@ msgstr ""
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
-#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
-#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
-#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
-#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:648 netbox/dcim/tables/devices.py:731
+#: netbox/dcim/tables/devices.py:778 netbox/dcim/tables/devices.py:841
+#: netbox/dcim/tables/devices.py:911 netbox/dcim/tables/devices.py:974
+#: netbox/dcim/tables/devices.py:994 netbox/dcim/tables/devices.py:1023
+#: netbox/dcim/tables/devices.py:1053 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1508,7 +1508,7 @@ msgstr ""
#: netbox/circuits/tables/circuits.py:80 netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1036
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1586,8 +1586,8 @@ msgstr ""
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
-#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:239
+#: netbox/dcim/choices.py:1607 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr ""
@@ -1653,42 +1653,42 @@ msgstr ""
msgid "Cancelled"
msgstr ""
-#: netbox/core/data_backends.py:29 netbox/core/tables/plugins.py:51
+#: netbox/core/data_backends.py:32 netbox/core/tables/plugins.py:51
#: netbox/templates/core/plugin.html:87
#: netbox/templates/dcim/interface.html:216
msgid "Local"
msgstr ""
-#: netbox/core/data_backends.py:47 netbox/core/tables/change_logging.py:20
+#: netbox/core/data_backends.py:50 netbox/core/tables/change_logging.py:20
#: netbox/templates/account/profile.html:15 netbox/templates/users/user.html:17
#: netbox/users/tables.py:31
msgid "Username"
msgstr ""
-#: netbox/core/data_backends.py:49 netbox/core/data_backends.py:55
+#: netbox/core/data_backends.py:52 netbox/core/data_backends.py:58
msgid "Only used for cloning with HTTP(S)"
msgstr ""
-#: netbox/core/data_backends.py:53 netbox/templates/account/base.html:23
+#: netbox/core/data_backends.py:56 netbox/templates/account/base.html:23
#: netbox/templates/account/password.html:12
#: netbox/users/forms/model_forms.py:171
msgid "Password"
msgstr ""
-#: netbox/core/data_backends.py:59
+#: netbox/core/data_backends.py:62
msgid "Branch"
msgstr ""
-#: netbox/core/data_backends.py:106
+#: netbox/core/data_backends.py:120
#, python-brace-format
msgid "Fetching remote data failed ({name}): {error}"
msgstr ""
-#: netbox/core/data_backends.py:119
+#: netbox/core/data_backends.py:133
msgid "AWS access key ID"
msgstr ""
-#: netbox/core/data_backends.py:123
+#: netbox/core/data_backends.py:137
msgid "AWS secret access key"
msgstr ""
@@ -1911,7 +1911,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr ""
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1518
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2013,7 +2013,7 @@ msgid "Change logging is not supported for this object type ({type})."
msgstr ""
#: netbox/core/models/config.py:18 netbox/core/models/data.py:266
-#: netbox/core/models/files.py:27 netbox/core/models/jobs.py:51
+#: netbox/core/models/files.py:27 netbox/core/models/jobs.py:49
#: netbox/extras/models/models.py:730 netbox/extras/models/notifications.py:39
#: netbox/extras/models/notifications.py:186
#: netbox/netbox/models/features.py:53 netbox/users/models/tokens.py:32
@@ -2057,13 +2057,13 @@ msgstr ""
#: netbox/dcim/models/device_component_templates.py:414
#: netbox/dcim/models/device_component_templates.py:513
#: netbox/dcim/models/device_component_templates.py:613
-#: netbox/dcim/models/device_components.py:284
-#: netbox/dcim/models/device_components.py:313
-#: netbox/dcim/models/device_components.py:346
-#: netbox/dcim/models/device_components.py:464
-#: netbox/dcim/models/device_components.py:606
-#: netbox/dcim/models/device_components.py:971
-#: netbox/dcim/models/device_components.py:1045 netbox/dcim/models/power.py:102
+#: netbox/dcim/models/device_components.py:283
+#: netbox/dcim/models/device_components.py:312
+#: netbox/dcim/models/device_components.py:345
+#: netbox/dcim/models/device_components.py:463
+#: netbox/dcim/models/device_components.py:605
+#: netbox/dcim/models/device_components.py:970
+#: netbox/dcim/models/device_components.py:1044 netbox/dcim/models/power.py:102
#: netbox/extras/models/customfields.py:78 netbox/extras/models/search.py:41
#: netbox/virtualization/models/clusters.py:61 netbox/vpn/models/l2vpn.py:32
msgid "type"
@@ -2078,7 +2078,7 @@ msgstr ""
#: netbox/core/models/data.py:59
#: netbox/dcim/models/device_component_templates.py:419
-#: netbox/dcim/models/device_components.py:513
+#: netbox/dcim/models/device_components.py:512
#: netbox/extras/models/models.py:70 netbox/extras/models/models.py:301
#: netbox/extras/models/models.py:526 netbox/users/models/permissions.py:29
msgid "enabled"
@@ -2188,58 +2188,58 @@ msgstr ""
msgid "managed files"
msgstr ""
-#: netbox/core/models/jobs.py:55
+#: netbox/core/models/jobs.py:53
msgid "scheduled"
msgstr ""
-#: netbox/core/models/jobs.py:60
+#: netbox/core/models/jobs.py:58
msgid "interval"
msgstr ""
-#: netbox/core/models/jobs.py:66
+#: netbox/core/models/jobs.py:64
msgid "Recurrence interval (in minutes)"
msgstr ""
-#: netbox/core/models/jobs.py:69
+#: netbox/core/models/jobs.py:67
msgid "started"
msgstr ""
-#: netbox/core/models/jobs.py:74
+#: netbox/core/models/jobs.py:72
msgid "completed"
msgstr ""
-#: netbox/core/models/jobs.py:92 netbox/extras/models/models.py:101
+#: netbox/core/models/jobs.py:90 netbox/extras/models/models.py:101
#: netbox/extras/models/staging.py:87
msgid "data"
msgstr ""
-#: netbox/core/models/jobs.py:97
+#: netbox/core/models/jobs.py:95
msgid "error"
msgstr ""
-#: netbox/core/models/jobs.py:102
+#: netbox/core/models/jobs.py:100
msgid "job ID"
msgstr ""
-#: netbox/core/models/jobs.py:113
+#: netbox/core/models/jobs.py:111
msgid "job"
msgstr ""
-#: netbox/core/models/jobs.py:114
+#: netbox/core/models/jobs.py:112
msgid "jobs"
msgstr ""
-#: netbox/core/models/jobs.py:136
+#: netbox/core/models/jobs.py:135
#, python-brace-format
msgid "Jobs cannot be assigned to this object type ({type})."
msgstr ""
-#: netbox/core/models/jobs.py:186
+#: netbox/core/models/jobs.py:185
#, python-brace-format
msgid "Invalid status for job termination. Choices are: {choices}"
msgstr ""
-#: netbox/core/models/jobs.py:217
+#: netbox/core/models/jobs.py:216
msgid ""
"enqueue() cannot be called with values for both schedule_at and immediate."
msgstr ""
@@ -2477,7 +2477,7 @@ msgid "Staging"
msgstr ""
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
+#: netbox/dcim/choices.py:240 netbox/dcim/choices.py:1531
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr ""
@@ -2541,17 +2541,17 @@ msgstr ""
msgid "Millimeters"
msgstr ""
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1553
msgid "Inches"
msgstr ""
-#: netbox/dcim/choices.py:136 netbox/dcim/choices.py:204
-#: netbox/dcim/choices.py:248
+#: netbox/dcim/choices.py:136 netbox/dcim/choices.py:207
+#: netbox/dcim/choices.py:254
msgid "Front to rear"
msgstr ""
-#: netbox/dcim/choices.py:137 netbox/dcim/choices.py:205
-#: netbox/dcim/choices.py:249
+#: netbox/dcim/choices.py:137 netbox/dcim/choices.py:208
+#: netbox/dcim/choices.py:255
msgid "Rear to front"
msgstr ""
@@ -2564,8 +2564,8 @@ msgstr ""
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
#: netbox/dcim/forms/model_forms.py:1502 netbox/dcim/forms/object_import.py:176
-#: netbox/dcim/tables/devices.py:653 netbox/dcim/tables/devices.py:866
-#: netbox/dcim/tables/devices.py:951 netbox/extras/tables/tables.py:223
+#: netbox/dcim/tables/devices.py:656 netbox/dcim/tables/devices.py:869
+#: netbox/dcim/tables/devices.py:954 netbox/extras/tables/tables.py:223
#: netbox/ipam/tables/fhrp.py:59 netbox/ipam/tables/ip.py:378
#: netbox/ipam/tables/services.py:44 netbox/templates/dcim/interface.html:102
#: netbox/templates/dcim/interface.html:309
@@ -2608,7 +2608,7 @@ msgstr ""
msgid "Rear"
msgstr ""
-#: netbox/dcim/choices.py:186 netbox/dcim/choices.py:232
+#: netbox/dcim/choices.py:186 netbox/dcim/choices.py:238
#: netbox/virtualization/choices.py:46
msgid "Staged"
msgstr ""
@@ -2617,67 +2617,79 @@ msgstr ""
msgid "Inventory"
msgstr ""
-#: netbox/dcim/choices.py:206 netbox/dcim/choices.py:250
+#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:256
msgid "Left to right"
msgstr ""
-#: netbox/dcim/choices.py:207 netbox/dcim/choices.py:251
+#: netbox/dcim/choices.py:210 netbox/dcim/choices.py:257
msgid "Right to left"
msgstr ""
-#: netbox/dcim/choices.py:208 netbox/dcim/choices.py:252
+#: netbox/dcim/choices.py:211 netbox/dcim/choices.py:258
msgid "Side to rear"
msgstr ""
-#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:212
+msgid "Rear to side"
+msgstr ""
+
+#: netbox/dcim/choices.py:213
+msgid "Bottom to top"
+msgstr ""
+
+#: netbox/dcim/choices.py:214
+msgid "Top to bottom"
+msgstr ""
+
+#: netbox/dcim/choices.py:215 netbox/dcim/choices.py:259
+#: netbox/dcim/choices.py:1303
msgid "Passive"
msgstr ""
-#: netbox/dcim/choices.py:210
+#: netbox/dcim/choices.py:216
msgid "Mixed"
msgstr ""
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
+#: netbox/dcim/choices.py:484 netbox/dcim/choices.py:733
msgid "NEMA (Non-locking)"
msgstr ""
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
+#: netbox/dcim/choices.py:506 netbox/dcim/choices.py:755
msgid "NEMA (Locking)"
msgstr ""
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
+#: netbox/dcim/choices.py:530 netbox/dcim/choices.py:779
msgid "California Style"
msgstr ""
-#: netbox/dcim/choices.py:532
+#: netbox/dcim/choices.py:538
msgid "International/ITA"
msgstr ""
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
+#: netbox/dcim/choices.py:573 netbox/dcim/choices.py:814
msgid "Proprietary"
msgstr ""
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
-#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
-#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
+#: netbox/dcim/choices.py:581 netbox/dcim/choices.py:824
+#: netbox/dcim/choices.py:1219 netbox/dcim/choices.py:1221
+#: netbox/dcim/choices.py:1447 netbox/dcim/choices.py:1449
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr ""
-#: netbox/dcim/choices.py:781
+#: netbox/dcim/choices.py:787
msgid "ITA/International"
msgstr ""
-#: netbox/dcim/choices.py:848
+#: netbox/dcim/choices.py:854
msgid "Physical"
msgstr ""
-#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
+#: netbox/dcim/choices.py:855 netbox/dcim/choices.py:1023
msgid "Virtual"
msgstr ""
-#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
+#: netbox/dcim/choices.py:856 netbox/dcim/choices.py:1097
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
@@ -2685,13 +2697,13 @@ msgstr ""
msgid "Wireless"
msgstr ""
-#: netbox/dcim/choices.py:1014
+#: netbox/dcim/choices.py:1021
msgid "Virtual interfaces"
msgstr ""
-#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1024 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
-#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
+#: netbox/dcim/tables/devices.py:660 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
#: netbox/virtualization/forms/bulk_edit.py:212
#: netbox/virtualization/forms/bulk_import.py:158
@@ -2699,27 +2711,27 @@ msgstr ""
msgid "Bridge"
msgstr ""
-#: netbox/dcim/choices.py:1018
+#: netbox/dcim/choices.py:1025
msgid "Link Aggregation Group (LAG)"
msgstr ""
-#: netbox/dcim/choices.py:1022
+#: netbox/dcim/choices.py:1029
msgid "Ethernet (fixed)"
msgstr ""
-#: netbox/dcim/choices.py:1037
+#: netbox/dcim/choices.py:1044
msgid "Ethernet (modular)"
msgstr ""
-#: netbox/dcim/choices.py:1073
+#: netbox/dcim/choices.py:1081
msgid "Ethernet (backplane)"
msgstr ""
-#: netbox/dcim/choices.py:1105
+#: netbox/dcim/choices.py:1113
msgid "Cellular"
msgstr ""
-#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1165 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2727,130 +2739,130 @@ msgstr ""
msgid "Serial"
msgstr ""
-#: netbox/dcim/choices.py:1172
+#: netbox/dcim/choices.py:1180
msgid "Coaxial"
msgstr ""
-#: netbox/dcim/choices.py:1192
+#: netbox/dcim/choices.py:1200
msgid "Stacking"
msgstr ""
-#: netbox/dcim/choices.py:1242
+#: netbox/dcim/choices.py:1250
msgid "Half"
msgstr ""
-#: netbox/dcim/choices.py:1243
+#: netbox/dcim/choices.py:1251
msgid "Full"
msgstr ""
-#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1252 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr ""
-#: netbox/dcim/choices.py:1255
+#: netbox/dcim/choices.py:1263
msgid "Access"
msgstr ""
-#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1264 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr ""
-#: netbox/dcim/choices.py:1257
+#: netbox/dcim/choices.py:1265
msgid "Tagged (All)"
msgstr ""
-#: netbox/dcim/choices.py:1286
+#: netbox/dcim/choices.py:1294
msgid "IEEE Standard"
msgstr ""
-#: netbox/dcim/choices.py:1297
+#: netbox/dcim/choices.py:1305
msgid "Passive 24V (2-pair)"
msgstr ""
-#: netbox/dcim/choices.py:1298
+#: netbox/dcim/choices.py:1306
msgid "Passive 24V (4-pair)"
msgstr ""
-#: netbox/dcim/choices.py:1299
+#: netbox/dcim/choices.py:1307
msgid "Passive 48V (2-pair)"
msgstr ""
-#: netbox/dcim/choices.py:1300
+#: netbox/dcim/choices.py:1308
msgid "Passive 48V (4-pair)"
msgstr ""
-#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
+#: netbox/dcim/choices.py:1378 netbox/dcim/choices.py:1488
msgid "Copper"
msgstr ""
-#: netbox/dcim/choices.py:1393
+#: netbox/dcim/choices.py:1401
msgid "Fiber Optic"
msgstr ""
-#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
+#: netbox/dcim/choices.py:1434 netbox/dcim/choices.py:1517
msgid "USB"
msgstr ""
-#: netbox/dcim/choices.py:1496
+#: netbox/dcim/choices.py:1504
msgid "Fiber"
msgstr ""
-#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1529 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr ""
-#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1548 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr ""
-#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1549 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr ""
-#: netbox/dcim/choices.py:1542
+#: netbox/dcim/choices.py:1550
msgid "Centimeters"
msgstr ""
-#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1551 netbox/wireless/choices.py:499
msgid "Miles"
msgstr ""
-#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1552 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr ""
-#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/dcim/choices.py:1568 netbox/templates/dcim/device.html:327
#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr ""
-#: netbox/dcim/choices.py:1561
+#: netbox/dcim/choices.py:1569
msgid "Grams"
msgstr ""
-#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/dcim/choices.py:1570 netbox/templates/dcim/device.html:328
#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr ""
-#: netbox/dcim/choices.py:1563
+#: netbox/dcim/choices.py:1571
msgid "Ounces"
msgstr ""
-#: netbox/dcim/choices.py:1610
+#: netbox/dcim/choices.py:1618
msgid "Redundant"
msgstr ""
-#: netbox/dcim/choices.py:1631
+#: netbox/dcim/choices.py:1639
msgid "Single phase"
msgstr ""
-#: netbox/dcim/choices.py:1632
+#: netbox/dcim/choices.py:1640
msgid "Three-phase"
msgstr ""
@@ -3102,7 +3114,7 @@ msgstr ""
#: netbox/dcim/filtersets.py:1103 netbox/dcim/forms/common.py:18
#: netbox/dcim/forms/filtersets.py:818 netbox/dcim/forms/filtersets.py:1385
-#: netbox/dcim/models/device_components.py:519
+#: netbox/dcim/models/device_components.py:518
#: netbox/virtualization/filtersets.py:230
#: netbox/virtualization/filtersets.py:301
#: netbox/virtualization/forms/filtersets.py:172
@@ -3160,7 +3172,7 @@ msgstr ""
#: netbox/dcim/filtersets.py:1333 netbox/dcim/filtersets.py:1425
#: netbox/ipam/filtersets.py:611 netbox/ipam/filtersets.py:851
-#: netbox/ipam/filtersets.py:1089 netbox/virtualization/filtersets.py:161
+#: netbox/ipam/filtersets.py:1115 netbox/virtualization/filtersets.py:161
#: netbox/vpn/filtersets.py:390
msgid "Device (ID)"
msgstr ""
@@ -3170,7 +3182,7 @@ msgid "Rack (name)"
msgstr ""
#: netbox/dcim/filtersets.py:1431 netbox/ipam/filtersets.py:606
-#: netbox/ipam/filtersets.py:846 netbox/ipam/filtersets.py:1095
+#: netbox/ipam/filtersets.py:846 netbox/ipam/filtersets.py:1121
#: netbox/vpn/filtersets.py:385
msgid "Device (name)"
msgstr ""
@@ -3221,8 +3233,8 @@ msgstr ""
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
#: netbox/dcim/forms/model_forms.py:1378
-#: netbox/dcim/models/device_components.py:712
-#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
+#: netbox/dcim/models/device_components.py:711
+#: netbox/dcim/tables/devices.py:626 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
#: netbox/ipam/filtersets.py:584 netbox/ipam/filtersets.py:595
#: netbox/ipam/forms/bulk_edit.py:241 netbox/ipam/forms/bulk_edit.py:297
@@ -3313,7 +3325,7 @@ msgstr ""
msgid "Wireless LAN"
msgstr ""
-#: netbox/dcim/filtersets.py:1734 netbox/dcim/tables/devices.py:610
+#: netbox/dcim/filtersets.py:1734 netbox/dcim/tables/devices.py:613
msgid "Wireless link"
msgstr ""
@@ -3341,12 +3353,12 @@ msgstr ""
msgid "Master (name)"
msgstr ""
-#: netbox/dcim/filtersets.py:1939 netbox/tenancy/filtersets.py:246
+#: netbox/dcim/filtersets.py:1939 netbox/tenancy/filtersets.py:245
msgid "Tenant (ID)"
msgstr ""
#: netbox/dcim/filtersets.py:1945 netbox/extras/filtersets.py:618
-#: netbox/tenancy/filtersets.py:252
+#: netbox/tenancy/filtersets.py:251
msgid "Tenant (slug)"
msgstr ""
@@ -3373,7 +3385,7 @@ msgstr ""
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:707 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3420,7 +3432,7 @@ msgstr ""
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
#: netbox/dcim/forms/model_forms.py:1515 netbox/dcim/forms/object_import.py:187
#: netbox/dcim/tables/devices.py:96 netbox/dcim/tables/devices.py:172
-#: netbox/dcim/tables/devices.py:937 netbox/dcim/tables/devicetypes.py:81
+#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:81
#: netbox/dcim/tables/devicetypes.py:309 netbox/dcim/tables/modules.py:20
#: netbox/dcim/tables/modules.py:60 netbox/dcim/tables/racks.py:58
#: netbox/dcim/tables/racks.py:132 netbox/templates/dcim/devicetype.html:14
@@ -3544,8 +3556,8 @@ msgstr ""
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
#: netbox/dcim/forms/model_forms.py:1510 netbox/dcim/forms/object_import.py:181
-#: netbox/dcim/tables/devices.py:169 netbox/dcim/tables/devices.py:806
-#: netbox/dcim/tables/devices.py:934 netbox/dcim/tables/devicetypes.py:305
+#: netbox/dcim/tables/devices.py:169 netbox/dcim/tables/devices.py:809
+#: netbox/dcim/tables/devices.py:937 netbox/dcim/tables/devicetypes.py:305
#: netbox/dcim/tables/racks.py:129 netbox/extras/filtersets.py:552
#: netbox/ipam/forms/bulk_edit.py:260 netbox/ipam/forms/bulk_edit.py:310
#: netbox/ipam/forms/bulk_edit.py:358 netbox/ipam/forms/bulk_edit.py:556
@@ -3744,10 +3756,10 @@ msgstr ""
#: netbox/dcim/tables/connections.py:60 netbox/dcim/tables/devices.py:285
#: netbox/dcim/tables/devices.py:371 netbox/dcim/tables/devices.py:412
#: netbox/dcim/tables/devices.py:454 netbox/dcim/tables/devices.py:505
-#: netbox/dcim/tables/devices.py:594 netbox/dcim/tables/devices.py:694
-#: netbox/dcim/tables/devices.py:751 netbox/dcim/tables/devices.py:798
-#: netbox/dcim/tables/devices.py:858 netbox/dcim/tables/devices.py:927
-#: netbox/dcim/tables/devices.py:1054 netbox/dcim/tables/modules.py:52
+#: netbox/dcim/tables/devices.py:597 netbox/dcim/tables/devices.py:697
+#: netbox/dcim/tables/devices.py:754 netbox/dcim/tables/devices.py:801
+#: netbox/dcim/tables/devices.py:861 netbox/dcim/tables/devices.py:930
+#: netbox/dcim/tables/devices.py:1057 netbox/dcim/tables/modules.py:52
#: netbox/extras/forms/filtersets.py:321 netbox/ipam/forms/bulk_import.py:304
#: netbox/ipam/forms/bulk_import.py:481 netbox/ipam/forms/filtersets.py:551
#: netbox/ipam/forms/model_forms.py:319 netbox/ipam/forms/model_forms.py:679
@@ -3871,7 +3883,7 @@ msgstr ""
#: netbox/dcim/forms/bulk_edit.py:1039
#: netbox/dcim/models/device_component_templates.py:283
-#: netbox/dcim/models/device_components.py:357
+#: netbox/dcim/models/device_components.py:356
msgid "Maximum power draw (watts)"
msgstr ""
@@ -3881,7 +3893,7 @@ msgstr ""
#: netbox/dcim/forms/bulk_edit.py:1045
#: netbox/dcim/models/device_component_templates.py:290
-#: netbox/dcim/models/device_components.py:364
+#: netbox/dcim/models/device_components.py:363
msgid "Allocated power draw (watts)"
msgstr ""
@@ -3903,7 +3915,7 @@ msgstr ""
#: netbox/dcim/forms/bulk_import.py:876 netbox/dcim/forms/filtersets.py:1394
#: netbox/dcim/forms/object_import.py:90
#: netbox/dcim/models/device_component_templates.py:438
-#: netbox/dcim/models/device_components.py:671
+#: netbox/dcim/models/device_components.py:670
msgid "PoE mode"
msgstr ""
@@ -3911,7 +3923,7 @@ msgstr ""
#: netbox/dcim/forms/bulk_import.py:882 netbox/dcim/forms/filtersets.py:1399
#: netbox/dcim/forms/object_import.py:95
#: netbox/dcim/models/device_component_templates.py:444
-#: netbox/dcim/models/device_components.py:677
+#: netbox/dcim/models/device_components.py:676
msgid "PoE type"
msgstr ""
@@ -3934,7 +3946,7 @@ msgstr ""
msgid "Module"
msgstr ""
-#: netbox/dcim/forms/bulk_edit.py:1420 netbox/dcim/tables/devices.py:662
+#: netbox/dcim/forms/bulk_edit.py:1420 netbox/dcim/tables/devices.py:665
#: netbox/templates/dcim/interface.html:110
msgid "LAG"
msgstr ""
@@ -3946,7 +3958,7 @@ msgstr ""
#: netbox/dcim/forms/bulk_edit.py:1431 netbox/dcim/forms/bulk_import.py:714
#: netbox/dcim/forms/bulk_import.py:740 netbox/dcim/forms/filtersets.py:1252
#: netbox/dcim/forms/filtersets.py:1277 netbox/dcim/forms/filtersets.py:1358
-#: netbox/dcim/tables/devices.py:607
+#: netbox/dcim/tables/devices.py:610
#: netbox/templates/circuits/inc/circuit_termination_fields.html:67
#: netbox/templates/dcim/consoleport.html:40
#: netbox/templates/dcim/consoleserverport.html:40
@@ -3993,7 +4005,7 @@ msgid "Wireless LAN group"
msgstr ""
#: netbox/dcim/forms/bulk_edit.py:1499 netbox/dcim/forms/model_forms.py:1346
-#: netbox/dcim/tables/devices.py:616 netbox/netbox/navigation/menu.py:146
+#: netbox/dcim/tables/devices.py:619 netbox/netbox/navigation/menu.py:146
#: netbox/templates/dcim/interface.html:280
#: netbox/wireless/tables/wirelesslan.py:24
msgid "Wireless LANs"
@@ -4374,7 +4386,7 @@ msgstr ""
msgid "Physical medium classification"
msgstr ""
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:822
msgid "Installed device"
msgstr ""
@@ -4463,7 +4475,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr ""
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1027 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4515,7 +4527,7 @@ msgstr ""
msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
msgstr ""
-#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
+#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:527
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
#: netbox/virtualization/forms/bulk_edit.py:225
@@ -4671,7 +4683,7 @@ msgid "Mgmt only"
msgstr ""
#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
-#: netbox/dcim/models/device_components.py:630
+#: netbox/dcim/models/device_components.py:629
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
msgstr ""
@@ -4703,7 +4715,7 @@ msgstr ""
msgid "Cable"
msgstr ""
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:949
msgid "Discovered"
msgstr ""
@@ -4848,7 +4860,7 @@ msgid "Front Port"
msgstr ""
#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
-#: netbox/dcim/tables/devices.py:707
+#: netbox/dcim/tables/devices.py:710
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4970,7 +4982,7 @@ msgid ""
"selected number of rear port positions ({rearport_count})."
msgstr ""
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1033
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -4993,7 +5005,7 @@ msgstr ""
#: netbox/dcim/models/cables.py:62
#: netbox/dcim/models/device_component_templates.py:55
-#: netbox/dcim/models/device_components.py:63
+#: netbox/dcim/models/device_components.py:62
#: netbox/extras/models/customfields.py:111
msgid "label"
msgstr ""
@@ -5091,7 +5103,7 @@ msgid ""
msgstr ""
#: netbox/dcim/models/device_component_templates.py:58
-#: netbox/dcim/models/device_components.py:66
+#: netbox/dcim/models/device_components.py:65
msgid "Physical label"
msgstr ""
@@ -5128,12 +5140,12 @@ msgid "console server port templates"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:279
-#: netbox/dcim/models/device_components.py:353
+#: netbox/dcim/models/device_components.py:352
msgid "maximum draw"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:286
-#: netbox/dcim/models/device_components.py:360
+#: netbox/dcim/models/device_components.py:359
msgid "allocated draw"
msgstr ""
@@ -5146,18 +5158,18 @@ msgid "power port templates"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:316
-#: netbox/dcim/models/device_components.py:383
+#: netbox/dcim/models/device_components.py:382
#, python-brace-format
msgid "Allocated draw cannot exceed the maximum draw ({maximum_draw}W)."
msgstr ""
#: netbox/dcim/models/device_component_templates.py:348
-#: netbox/dcim/models/device_components.py:478
+#: netbox/dcim/models/device_components.py:477
msgid "feed leg"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:352
-#: netbox/dcim/models/device_components.py:482
+#: netbox/dcim/models/device_components.py:481
msgid "Phase (for three-phase feeds)"
msgstr ""
@@ -5180,17 +5192,17 @@ msgid "Parent power port ({power_port}) must belong to the same module type"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:424
-#: netbox/dcim/models/device_components.py:612
+#: netbox/dcim/models/device_components.py:611
msgid "management only"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:432
-#: netbox/dcim/models/device_components.py:551
+#: netbox/dcim/models/device_components.py:550
msgid "bridge interface"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:450
-#: netbox/dcim/models/device_components.py:637
+#: netbox/dcim/models/device_components.py:636
msgid "wireless role"
msgstr ""
@@ -5203,7 +5215,7 @@ msgid "interface templates"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:464
-#: netbox/dcim/models/device_components.py:805
+#: netbox/dcim/models/device_components.py:804
#: netbox/virtualization/models/virtualmachines.py:405
msgid "An interface cannot be bridged to itself."
msgstr ""
@@ -5219,7 +5231,7 @@ msgid "Bridge interface ({bridge}) must belong to the same module type"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:527
-#: netbox/dcim/models/device_components.py:985
+#: netbox/dcim/models/device_components.py:984
msgid "rear port position"
msgstr ""
@@ -5244,7 +5256,7 @@ msgid ""
msgstr ""
#: netbox/dcim/models/device_component_templates.py:622
-#: netbox/dcim/models/device_components.py:1054
+#: netbox/dcim/models/device_components.py:1053
msgid "positions"
msgstr ""
@@ -5257,12 +5269,12 @@ msgid "rear port templates"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:663
-#: netbox/dcim/models/device_components.py:1104
+#: netbox/dcim/models/device_components.py:1103
msgid "position"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:666
-#: netbox/dcim/models/device_components.py:1107
+#: netbox/dcim/models/device_components.py:1106
msgid "Identifier to reference when renaming installed components"
msgstr ""
@@ -5290,12 +5302,12 @@ msgid ""
msgstr ""
#: netbox/dcim/models/device_component_templates.py:769
-#: netbox/dcim/models/device_components.py:1263
+#: netbox/dcim/models/device_components.py:1262
msgid "part ID"
msgstr ""
#: netbox/dcim/models/device_component_templates.py:771
-#: netbox/dcim/models/device_components.py:1265
+#: netbox/dcim/models/device_components.py:1264
msgid "Manufacturer-assigned part identifier"
msgstr ""
@@ -5307,411 +5319,411 @@ msgstr ""
msgid "inventory item templates"
msgstr ""
-#: netbox/dcim/models/device_components.py:106
+#: netbox/dcim/models/device_components.py:105
msgid "Components cannot be moved to a different device."
msgstr ""
-#: netbox/dcim/models/device_components.py:145
+#: netbox/dcim/models/device_components.py:144
msgid "cable end"
msgstr ""
-#: netbox/dcim/models/device_components.py:151
+#: netbox/dcim/models/device_components.py:150
msgid "mark connected"
msgstr ""
-#: netbox/dcim/models/device_components.py:153
+#: netbox/dcim/models/device_components.py:152
msgid "Treat as if a cable is connected"
msgstr ""
-#: netbox/dcim/models/device_components.py:171
+#: netbox/dcim/models/device_components.py:170
msgid "Must specify cable end (A or B) when attaching a cable."
msgstr ""
-#: netbox/dcim/models/device_components.py:175
+#: netbox/dcim/models/device_components.py:174
msgid "Cable end must not be set without a cable."
msgstr ""
-#: netbox/dcim/models/device_components.py:179
+#: netbox/dcim/models/device_components.py:178
msgid "Cannot mark as connected with a cable attached."
msgstr ""
-#: netbox/dcim/models/device_components.py:203
+#: netbox/dcim/models/device_components.py:202
#, python-brace-format
msgid "{class_name} models must declare a parent_object property"
msgstr ""
-#: netbox/dcim/models/device_components.py:288
-#: netbox/dcim/models/device_components.py:317
-#: netbox/dcim/models/device_components.py:350
-#: netbox/dcim/models/device_components.py:468
+#: netbox/dcim/models/device_components.py:287
+#: netbox/dcim/models/device_components.py:316
+#: netbox/dcim/models/device_components.py:349
+#: netbox/dcim/models/device_components.py:467
msgid "Physical port type"
msgstr ""
-#: netbox/dcim/models/device_components.py:291
-#: netbox/dcim/models/device_components.py:320
+#: netbox/dcim/models/device_components.py:290
+#: netbox/dcim/models/device_components.py:319
msgid "speed"
msgstr ""
-#: netbox/dcim/models/device_components.py:295
-#: netbox/dcim/models/device_components.py:324
+#: netbox/dcim/models/device_components.py:294
+#: netbox/dcim/models/device_components.py:323
msgid "Port speed in bits per second"
msgstr ""
-#: netbox/dcim/models/device_components.py:301
+#: netbox/dcim/models/device_components.py:300
msgid "console port"
msgstr ""
-#: netbox/dcim/models/device_components.py:302
+#: netbox/dcim/models/device_components.py:301
msgid "console ports"
msgstr ""
-#: netbox/dcim/models/device_components.py:330
+#: netbox/dcim/models/device_components.py:329
msgid "console server port"
msgstr ""
-#: netbox/dcim/models/device_components.py:331
+#: netbox/dcim/models/device_components.py:330
msgid "console server ports"
msgstr ""
-#: netbox/dcim/models/device_components.py:370
+#: netbox/dcim/models/device_components.py:369
msgid "power port"
msgstr ""
-#: netbox/dcim/models/device_components.py:371
+#: netbox/dcim/models/device_components.py:370
msgid "power ports"
msgstr ""
-#: netbox/dcim/models/device_components.py:488
+#: netbox/dcim/models/device_components.py:487
msgid "power outlet"
msgstr ""
-#: netbox/dcim/models/device_components.py:489
+#: netbox/dcim/models/device_components.py:488
msgid "power outlets"
msgstr ""
-#: netbox/dcim/models/device_components.py:500
+#: netbox/dcim/models/device_components.py:499
#, python-brace-format
msgid "Parent power port ({power_port}) must belong to the same device"
msgstr ""
-#: netbox/dcim/models/device_components.py:531 netbox/vpn/models/crypto.py:81
+#: netbox/dcim/models/device_components.py:530 netbox/vpn/models/crypto.py:81
#: netbox/vpn/models/crypto.py:226
msgid "mode"
msgstr ""
-#: netbox/dcim/models/device_components.py:535
+#: netbox/dcim/models/device_components.py:534
msgid "IEEE 802.1Q tagging strategy"
msgstr ""
-#: netbox/dcim/models/device_components.py:543
+#: netbox/dcim/models/device_components.py:542
msgid "parent interface"
msgstr ""
-#: netbox/dcim/models/device_components.py:603
+#: netbox/dcim/models/device_components.py:602
msgid "parent LAG"
msgstr ""
-#: netbox/dcim/models/device_components.py:613
+#: netbox/dcim/models/device_components.py:612
msgid "This interface is used only for out-of-band management"
msgstr ""
-#: netbox/dcim/models/device_components.py:618
+#: netbox/dcim/models/device_components.py:617
msgid "speed (Kbps)"
msgstr ""
-#: netbox/dcim/models/device_components.py:621
+#: netbox/dcim/models/device_components.py:620
msgid "duplex"
msgstr ""
-#: netbox/dcim/models/device_components.py:631
+#: netbox/dcim/models/device_components.py:630
msgid "64-bit World Wide Name"
msgstr ""
-#: netbox/dcim/models/device_components.py:643
+#: netbox/dcim/models/device_components.py:642
msgid "wireless channel"
msgstr ""
-#: netbox/dcim/models/device_components.py:650
+#: netbox/dcim/models/device_components.py:649
msgid "channel frequency (MHz)"
msgstr ""
-#: netbox/dcim/models/device_components.py:651
-#: netbox/dcim/models/device_components.py:659
+#: netbox/dcim/models/device_components.py:650
+#: netbox/dcim/models/device_components.py:658
msgid "Populated by selected channel (if set)"
msgstr ""
-#: netbox/dcim/models/device_components.py:665
+#: netbox/dcim/models/device_components.py:664
msgid "transmit power (dBm)"
msgstr ""
-#: netbox/dcim/models/device_components.py:690 netbox/wireless/models.py:117
+#: netbox/dcim/models/device_components.py:689 netbox/wireless/models.py:117
msgid "wireless LANs"
msgstr ""
-#: netbox/dcim/models/device_components.py:698
+#: netbox/dcim/models/device_components.py:697
#: netbox/virtualization/models/virtualmachines.py:335
msgid "untagged VLAN"
msgstr ""
-#: netbox/dcim/models/device_components.py:704
+#: netbox/dcim/models/device_components.py:703
#: netbox/virtualization/models/virtualmachines.py:341
msgid "tagged VLANs"
msgstr ""
-#: netbox/dcim/models/device_components.py:746
+#: netbox/dcim/models/device_components.py:745
#: netbox/virtualization/models/virtualmachines.py:377
msgid "interface"
msgstr ""
-#: netbox/dcim/models/device_components.py:747
+#: netbox/dcim/models/device_components.py:746
#: netbox/virtualization/models/virtualmachines.py:378
msgid "interfaces"
msgstr ""
-#: netbox/dcim/models/device_components.py:758
+#: netbox/dcim/models/device_components.py:757
#, python-brace-format
msgid "{display_type} interfaces cannot have a cable attached."
msgstr ""
-#: netbox/dcim/models/device_components.py:766
+#: netbox/dcim/models/device_components.py:765
#, python-brace-format
msgid "{display_type} interfaces cannot be marked as connected."
msgstr ""
-#: netbox/dcim/models/device_components.py:775
+#: netbox/dcim/models/device_components.py:774
#: netbox/virtualization/models/virtualmachines.py:390
msgid "An interface cannot be its own parent."
msgstr ""
-#: netbox/dcim/models/device_components.py:779
+#: netbox/dcim/models/device_components.py:778
msgid "Only virtual interfaces may be assigned to a parent interface."
msgstr ""
-#: netbox/dcim/models/device_components.py:786
+#: netbox/dcim/models/device_components.py:785
#, python-brace-format
msgid ""
"The selected parent interface ({interface}) belongs to a different device "
"({device})"
msgstr ""
-#: netbox/dcim/models/device_components.py:792
+#: netbox/dcim/models/device_components.py:791
#, python-brace-format
msgid ""
"The selected parent interface ({interface}) belongs to {device}, which is "
"not part of virtual chassis {virtual_chassis}."
msgstr ""
-#: netbox/dcim/models/device_components.py:812
+#: netbox/dcim/models/device_components.py:811
#, python-brace-format
msgid ""
"The selected bridge interface ({bridge}) belongs to a different device "
"({device})."
msgstr ""
-#: netbox/dcim/models/device_components.py:818
+#: netbox/dcim/models/device_components.py:817
#, python-brace-format
msgid ""
"The selected bridge interface ({interface}) belongs to {device}, which is "
"not part of virtual chassis {virtual_chassis}."
msgstr ""
-#: netbox/dcim/models/device_components.py:829
+#: netbox/dcim/models/device_components.py:828
msgid "Virtual interfaces cannot have a parent LAG interface."
msgstr ""
-#: netbox/dcim/models/device_components.py:833
+#: netbox/dcim/models/device_components.py:832
msgid "A LAG interface cannot be its own parent."
msgstr ""
-#: netbox/dcim/models/device_components.py:840
+#: netbox/dcim/models/device_components.py:839
#, python-brace-format
msgid ""
"The selected LAG interface ({lag}) belongs to a different device ({device})."
msgstr ""
-#: netbox/dcim/models/device_components.py:846
+#: netbox/dcim/models/device_components.py:845
#, python-brace-format
msgid ""
"The selected LAG interface ({lag}) belongs to {device}, which is not part of "
"virtual chassis {virtual_chassis}."
msgstr ""
-#: netbox/dcim/models/device_components.py:857
+#: netbox/dcim/models/device_components.py:856
msgid "Virtual interfaces cannot have a PoE mode."
msgstr ""
-#: netbox/dcim/models/device_components.py:861
+#: netbox/dcim/models/device_components.py:860
msgid "Virtual interfaces cannot have a PoE type."
msgstr ""
-#: netbox/dcim/models/device_components.py:867
+#: netbox/dcim/models/device_components.py:866
msgid "Must specify PoE mode when designating a PoE type."
msgstr ""
-#: netbox/dcim/models/device_components.py:874
+#: netbox/dcim/models/device_components.py:873
msgid "Wireless role may be set only on wireless interfaces."
msgstr ""
-#: netbox/dcim/models/device_components.py:876
+#: netbox/dcim/models/device_components.py:875
msgid "Channel may be set only on wireless interfaces."
msgstr ""
-#: netbox/dcim/models/device_components.py:882
+#: netbox/dcim/models/device_components.py:881
msgid "Channel frequency may be set only on wireless interfaces."
msgstr ""
-#: netbox/dcim/models/device_components.py:886
+#: netbox/dcim/models/device_components.py:885
msgid "Cannot specify custom frequency with channel selected."
msgstr ""
-#: netbox/dcim/models/device_components.py:892
+#: netbox/dcim/models/device_components.py:891
msgid "Channel width may be set only on wireless interfaces."
msgstr ""
-#: netbox/dcim/models/device_components.py:894
+#: netbox/dcim/models/device_components.py:893
msgid "Cannot specify custom width with channel selected."
msgstr ""
-#: netbox/dcim/models/device_components.py:902
+#: netbox/dcim/models/device_components.py:901
#, python-brace-format
msgid ""
"The untagged VLAN ({untagged_vlan}) must belong to the same site as the "
"interface's parent device, or it must be global."
msgstr ""
-#: netbox/dcim/models/device_components.py:991
+#: netbox/dcim/models/device_components.py:990
msgid "Mapped position on corresponding rear port"
msgstr ""
-#: netbox/dcim/models/device_components.py:1007
+#: netbox/dcim/models/device_components.py:1006
msgid "front port"
msgstr ""
-#: netbox/dcim/models/device_components.py:1008
+#: netbox/dcim/models/device_components.py:1007
msgid "front ports"
msgstr ""
-#: netbox/dcim/models/device_components.py:1022
+#: netbox/dcim/models/device_components.py:1021
#, python-brace-format
msgid "Rear port ({rear_port}) must belong to the same device"
msgstr ""
-#: netbox/dcim/models/device_components.py:1030
+#: netbox/dcim/models/device_components.py:1029
#, python-brace-format
msgid ""
"Invalid rear port position ({rear_port_position}): Rear port {name} has only "
"{positions} positions."
msgstr ""
-#: netbox/dcim/models/device_components.py:1060
+#: netbox/dcim/models/device_components.py:1059
msgid "Number of front ports which may be mapped"
msgstr ""
-#: netbox/dcim/models/device_components.py:1065
+#: netbox/dcim/models/device_components.py:1064
msgid "rear port"
msgstr ""
-#: netbox/dcim/models/device_components.py:1066
+#: netbox/dcim/models/device_components.py:1065
msgid "rear ports"
msgstr ""
-#: netbox/dcim/models/device_components.py:1080
+#: netbox/dcim/models/device_components.py:1079
#, python-brace-format
msgid ""
"The number of positions cannot be less than the number of mapped front ports "
"({frontport_count})"
msgstr ""
-#: netbox/dcim/models/device_components.py:1121
+#: netbox/dcim/models/device_components.py:1120
msgid "module bay"
msgstr ""
-#: netbox/dcim/models/device_components.py:1122
+#: netbox/dcim/models/device_components.py:1121
msgid "module bays"
msgstr ""
-#: netbox/dcim/models/device_components.py:1139
+#: netbox/dcim/models/device_components.py:1138
#: netbox/dcim/models/devices.py:1217
msgid "A module bay cannot belong to a module installed within it."
msgstr ""
-#: netbox/dcim/models/device_components.py:1165
+#: netbox/dcim/models/device_components.py:1164
msgid "device bay"
msgstr ""
-#: netbox/dcim/models/device_components.py:1166
+#: netbox/dcim/models/device_components.py:1165
msgid "device bays"
msgstr ""
-#: netbox/dcim/models/device_components.py:1176
+#: netbox/dcim/models/device_components.py:1175
#, python-brace-format
msgid "This type of device ({device_type}) does not support device bays."
msgstr ""
-#: netbox/dcim/models/device_components.py:1182
+#: netbox/dcim/models/device_components.py:1181
msgid "Cannot install a device into itself."
msgstr ""
-#: netbox/dcim/models/device_components.py:1190
+#: netbox/dcim/models/device_components.py:1189
#, python-brace-format
msgid ""
"Cannot install the specified device; device is already installed in {bay}."
msgstr ""
-#: netbox/dcim/models/device_components.py:1211
+#: netbox/dcim/models/device_components.py:1210
msgid "inventory item role"
msgstr ""
-#: netbox/dcim/models/device_components.py:1212
+#: netbox/dcim/models/device_components.py:1211
msgid "inventory item roles"
msgstr ""
-#: netbox/dcim/models/device_components.py:1269
+#: netbox/dcim/models/device_components.py:1268
#: netbox/dcim/models/devices.py:607 netbox/dcim/models/devices.py:1174
#: netbox/dcim/models/racks.py:313
#: netbox/virtualization/models/virtualmachines.py:131
msgid "serial number"
msgstr ""
-#: netbox/dcim/models/device_components.py:1277
+#: netbox/dcim/models/device_components.py:1276
#: netbox/dcim/models/devices.py:615 netbox/dcim/models/devices.py:1181
#: netbox/dcim/models/racks.py:320
msgid "asset tag"
msgstr ""
-#: netbox/dcim/models/device_components.py:1278
+#: netbox/dcim/models/device_components.py:1277
msgid "A unique tag used to identify this item"
msgstr ""
-#: netbox/dcim/models/device_components.py:1281
+#: netbox/dcim/models/device_components.py:1280
msgid "discovered"
msgstr ""
-#: netbox/dcim/models/device_components.py:1283
+#: netbox/dcim/models/device_components.py:1282
msgid "This item was automatically discovered"
msgstr ""
-#: netbox/dcim/models/device_components.py:1301
+#: netbox/dcim/models/device_components.py:1300
msgid "inventory item"
msgstr ""
-#: netbox/dcim/models/device_components.py:1302
+#: netbox/dcim/models/device_components.py:1301
msgid "inventory items"
msgstr ""
-#: netbox/dcim/models/device_components.py:1313
+#: netbox/dcim/models/device_components.py:1312
msgid "Cannot assign self as parent."
msgstr ""
-#: netbox/dcim/models/device_components.py:1321
+#: netbox/dcim/models/device_components.py:1320
msgid "Parent inventory item does not belong to the same device."
msgstr ""
-#: netbox/dcim/models/device_components.py:1327
+#: netbox/dcim/models/device_components.py:1326
msgid "Cannot move an inventory item with dependent children"
msgstr ""
-#: netbox/dcim/models/device_components.py:1335
+#: netbox/dcim/models/device_components.py:1334
msgid "Cannot assign inventory item to component on another device"
msgstr ""
@@ -6481,7 +6493,7 @@ msgstr ""
msgid "Site Group"
msgstr ""
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1068
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6490,12 +6502,12 @@ msgstr ""
msgid "IP Address"
msgstr ""
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1072
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr ""
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1076
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr ""
@@ -6533,7 +6545,7 @@ msgstr ""
msgid "Power outlets"
msgstr ""
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1081
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6631,37 +6643,37 @@ msgstr ""
msgid "Tunnel"
msgstr ""
-#: netbox/dcim/tables/devices.py:601 netbox/dcim/tables/devicetypes.py:228
+#: netbox/dcim/tables/devices.py:604 netbox/dcim/tables/devicetypes.py:228
#: netbox/templates/dcim/interface.html:65
msgid "Management Only"
msgstr ""
-#: netbox/dcim/tables/devices.py:620
+#: netbox/dcim/tables/devices.py:623
msgid "VDCs"
msgstr ""
-#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:873 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr ""
-#: netbox/dcim/tables/devices.py:873
+#: netbox/dcim/tables/devices.py:876
msgid "Module Serial"
msgstr ""
-#: netbox/dcim/tables/devices.py:877
+#: netbox/dcim/tables/devices.py:880
msgid "Module Asset Tag"
msgstr ""
-#: netbox/dcim/tables/devices.py:886
+#: netbox/dcim/tables/devices.py:889
msgid "Module Status"
msgstr ""
-#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:944 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr ""
-#: netbox/dcim/tables/devices.py:997
+#: netbox/dcim/tables/devices.py:1000
msgid "Items"
msgstr ""
@@ -7210,80 +7222,80 @@ msgstr ""
msgid "Unregistered widget class: {name}"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:126
+#: netbox/extras/dashboard/widgets.py:125
#, python-brace-format
msgid "{class_name} must define a render() method."
msgstr ""
-#: netbox/extras/dashboard/widgets.py:145
+#: netbox/extras/dashboard/widgets.py:144
msgid "Note"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:146
+#: netbox/extras/dashboard/widgets.py:145
msgid "Display some arbitrary custom content. Markdown is supported."
msgstr ""
-#: netbox/extras/dashboard/widgets.py:159
+#: netbox/extras/dashboard/widgets.py:158
msgid "Object Counts"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:160
+#: netbox/extras/dashboard/widgets.py:159
msgid ""
"Display a set of NetBox models and the number of objects created for each "
"type."
msgstr ""
-#: netbox/extras/dashboard/widgets.py:170
+#: netbox/extras/dashboard/widgets.py:169
msgid "Filters to apply when counting the number of objects"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:178
+#: netbox/extras/dashboard/widgets.py:177
msgid "Invalid format. Object filters must be passed as a dictionary."
msgstr ""
-#: netbox/extras/dashboard/widgets.py:209
+#: netbox/extras/dashboard/widgets.py:208
msgid "Object List"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:210
+#: netbox/extras/dashboard/widgets.py:209
msgid "Display an arbitrary list of objects."
msgstr ""
-#: netbox/extras/dashboard/widgets.py:223
+#: netbox/extras/dashboard/widgets.py:222
msgid "The default number of objects to display"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:235
+#: netbox/extras/dashboard/widgets.py:234
msgid "Invalid format. URL parameters must be passed as a dictionary."
msgstr ""
-#: netbox/extras/dashboard/widgets.py:275
+#: netbox/extras/dashboard/widgets.py:274
msgid "RSS Feed"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:280
+#: netbox/extras/dashboard/widgets.py:279
msgid "Embed an RSS feed from an external website."
msgstr ""
-#: netbox/extras/dashboard/widgets.py:287
+#: netbox/extras/dashboard/widgets.py:286
msgid "Feed URL"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:292
+#: netbox/extras/dashboard/widgets.py:291
msgid "The maximum number of objects to display"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:297
+#: netbox/extras/dashboard/widgets.py:296
msgid "How long to stored the cached content (in seconds)"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:349 netbox/templates/account/base.html:10
+#: netbox/extras/dashboard/widgets.py:348 netbox/templates/account/base.html:10
#: netbox/templates/account/bookmarks.html:7
#: netbox/templates/inc/user_menu.html:48
msgid "Bookmarks"
msgstr ""
-#: netbox/extras/dashboard/widgets.py:353
+#: netbox/extras/dashboard/widgets.py:352
msgid "Show your personal bookmarks"
msgstr ""
@@ -7326,8 +7338,8 @@ msgstr ""
msgid "Tenant group"
msgstr ""
-#: netbox/extras/filtersets.py:607 netbox/tenancy/filtersets.py:189
-#: netbox/tenancy/filtersets.py:209
+#: netbox/extras/filtersets.py:607 netbox/tenancy/filtersets.py:188
+#: netbox/tenancy/filtersets.py:208
msgid "Tenant group (slug)"
msgstr ""
@@ -8233,10 +8245,17 @@ msgstr ""
msgid "custom field choice sets"
msgstr ""
-#: netbox/extras/models/customfields.py:819
+#: netbox/extras/models/customfields.py:825
msgid "Must define base or extra choices."
msgstr ""
+#: netbox/extras/models/customfields.py:849
+#, python-brace-format
+msgid ""
+"Cannot remove choice {choice} as there are {model} objects which reference "
+"it."
+msgstr ""
+
#: netbox/extras/models/dashboard.py:18
msgid "layout"
msgstr ""
@@ -8781,64 +8800,64 @@ msgstr ""
msgid "Method"
msgstr ""
-#: netbox/extras/validators.py:16
+#: netbox/extras/validators.py:15
#, python-format
msgid "Ensure this value is equal to %(limit_value)s."
msgstr ""
-#: netbox/extras/validators.py:27
+#: netbox/extras/validators.py:26
#, python-format
msgid "Ensure this value does not equal %(limit_value)s."
msgstr ""
-#: netbox/extras/validators.py:38
+#: netbox/extras/validators.py:37
msgid "This field must be empty."
msgstr ""
-#: netbox/extras/validators.py:53
+#: netbox/extras/validators.py:52
msgid "This field must not be empty."
msgstr ""
-#: netbox/extras/validators.py:95
+#: netbox/extras/validators.py:94
msgid "Validation rules must be passed as a dictionary"
msgstr ""
-#: netbox/extras/validators.py:120
+#: netbox/extras/validators.py:119
#, python-brace-format
msgid "Custom validation failed for {attribute}: {exception}"
msgstr ""
-#: netbox/extras/validators.py:134
+#: netbox/extras/validators.py:133
#, python-brace-format
msgid "Invalid attribute \"{name}\" for request"
msgstr ""
-#: netbox/extras/validators.py:151
+#: netbox/extras/validators.py:150
#, python-brace-format
msgid "Invalid attribute \"{name}\" for {model}"
msgstr ""
-#: netbox/extras/views.py:961
+#: netbox/extras/views.py:960
msgid "Your dashboard has been reset."
msgstr ""
-#: netbox/extras/views.py:1007
+#: netbox/extras/views.py:1006
msgid "Added widget: "
msgstr ""
-#: netbox/extras/views.py:1048
+#: netbox/extras/views.py:1047
msgid "Updated widget: "
msgstr ""
-#: netbox/extras/views.py:1084
+#: netbox/extras/views.py:1083
msgid "Deleted widget: "
msgstr ""
-#: netbox/extras/views.py:1086
+#: netbox/extras/views.py:1085
msgid "Error deleting widget: "
msgstr ""
-#: netbox/extras/views.py:1173
+#: netbox/extras/views.py:1172
msgid "Unable to run script: RQ worker process not running."
msgstr ""
@@ -9012,12 +9031,12 @@ msgid "Parent prefix"
msgstr ""
#: netbox/ipam/filtersets.py:616 netbox/ipam/filtersets.py:856
-#: netbox/ipam/filtersets.py:1105 netbox/vpn/filtersets.py:396
+#: netbox/ipam/filtersets.py:1131 netbox/vpn/filtersets.py:396
msgid "Virtual machine (name)"
msgstr ""
#: netbox/ipam/filtersets.py:621 netbox/ipam/filtersets.py:861
-#: netbox/ipam/filtersets.py:1099 netbox/virtualization/filtersets.py:282
+#: netbox/ipam/filtersets.py:1125 netbox/virtualization/filtersets.py:282
#: netbox/virtualization/filtersets.py:321 netbox/vpn/filtersets.py:401
msgid "Virtual machine (ID)"
msgstr ""
@@ -9056,19 +9075,27 @@ msgstr ""
msgid "NAT inside IP address (ID)"
msgstr ""
-#: netbox/ipam/filtersets.py:1110
+#: netbox/ipam/filtersets.py:1041 netbox/ipam/forms/bulk_import.py:322
+msgid "Assigned interface"
+msgstr ""
+
+#: netbox/ipam/filtersets.py:1046
+msgid "Assigned VM interface"
+msgstr ""
+
+#: netbox/ipam/filtersets.py:1136
msgid "IP address (ID)"
msgstr ""
-#: netbox/ipam/filtersets.py:1116 netbox/ipam/models/ip.py:788
+#: netbox/ipam/filtersets.py:1142 netbox/ipam/models/ip.py:788
msgid "IP address"
msgstr ""
-#: netbox/ipam/filtersets.py:1141
+#: netbox/ipam/filtersets.py:1167
msgid "Primary IPv4 (ID)"
msgstr ""
-#: netbox/ipam/filtersets.py:1146
+#: netbox/ipam/filtersets.py:1172
msgid "Primary IPv6 (ID)"
msgstr ""
@@ -9279,10 +9306,6 @@ msgstr ""
msgid "Parent VM of assigned interface (if any)"
msgstr ""
-#: netbox/ipam/forms/bulk_import.py:322
-msgid "Assigned interface"
-msgstr ""
-
#: netbox/ipam/forms/bulk_import.py:325
msgid "Is primary"
msgstr ""
@@ -10952,63 +10975,63 @@ msgstr ""
msgid "Cannot delete stores from registry"
msgstr ""
-#: netbox/netbox/settings.py:762
+#: netbox/netbox/settings.py:760
msgid "Czech"
msgstr ""
-#: netbox/netbox/settings.py:763
+#: netbox/netbox/settings.py:761
msgid "Danish"
msgstr ""
-#: netbox/netbox/settings.py:764
+#: netbox/netbox/settings.py:762
msgid "German"
msgstr ""
-#: netbox/netbox/settings.py:765
+#: netbox/netbox/settings.py:763
msgid "English"
msgstr ""
-#: netbox/netbox/settings.py:766
+#: netbox/netbox/settings.py:764
msgid "Spanish"
msgstr ""
-#: netbox/netbox/settings.py:767
+#: netbox/netbox/settings.py:765
msgid "French"
msgstr ""
-#: netbox/netbox/settings.py:768
+#: netbox/netbox/settings.py:766
msgid "Italian"
msgstr ""
-#: netbox/netbox/settings.py:769
+#: netbox/netbox/settings.py:767
msgid "Japanese"
msgstr ""
-#: netbox/netbox/settings.py:770
+#: netbox/netbox/settings.py:768
msgid "Dutch"
msgstr ""
-#: netbox/netbox/settings.py:771
+#: netbox/netbox/settings.py:769
msgid "Polish"
msgstr ""
-#: netbox/netbox/settings.py:772
+#: netbox/netbox/settings.py:770
msgid "Portuguese"
msgstr ""
-#: netbox/netbox/settings.py:773
+#: netbox/netbox/settings.py:771
msgid "Russian"
msgstr ""
-#: netbox/netbox/settings.py:774
+#: netbox/netbox/settings.py:772
msgid "Turkish"
msgstr ""
-#: netbox/netbox/settings.py:775
+#: netbox/netbox/settings.py:773
msgid "Ukrainian"
msgstr ""
-#: netbox/netbox/settings.py:776
+#: netbox/netbox/settings.py:774
msgid "Chinese"
msgstr ""
@@ -13657,7 +13680,7 @@ msgid ""
"Click here to attempt loading NetBox again."
msgstr ""
-#: netbox/templates/tenancy/contact.html:18 netbox/tenancy/filtersets.py:148
+#: netbox/templates/tenancy/contact.html:18 netbox/tenancy/filtersets.py:147
#: netbox/tenancy/forms/bulk_edit.py:137 netbox/tenancy/forms/filtersets.py:102
#: netbox/tenancy/forms/forms.py:56 netbox/tenancy/forms/model_forms.py:106
#: netbox/tenancy/forms/model_forms.py:130 netbox/tenancy/tables/contacts.py:98
@@ -13684,7 +13707,7 @@ msgid "Add Contact Group"
msgstr ""
#: netbox/templates/tenancy/contactrole.html:15
-#: netbox/tenancy/filtersets.py:153 netbox/tenancy/forms/forms.py:61
+#: netbox/tenancy/filtersets.py:152 netbox/tenancy/forms/forms.py:61
#: netbox/tenancy/forms/model_forms.py:87
msgid "Contact Role"
msgstr ""
@@ -13749,11 +13772,6 @@ msgstr ""
msgid "Disk Space"
msgstr ""
-#: netbox/templates/virtualization/cluster.html:72
-msgctxt "Abbreviation for gigabyte"
-msgid "GB"
-msgstr ""
-
#: netbox/templates/virtualization/cluster/base.html:18
msgid "Add Virtual Machine"
msgstr ""
@@ -13993,57 +14011,57 @@ msgstr ""
msgid "Distance"
msgstr ""
-#: netbox/tenancy/filtersets.py:29
+#: netbox/tenancy/filtersets.py:28
msgid "Parent contact group (ID)"
msgstr ""
-#: netbox/tenancy/filtersets.py:35
+#: netbox/tenancy/filtersets.py:34
msgid "Parent contact group (slug)"
msgstr ""
-#: netbox/tenancy/filtersets.py:41 netbox/tenancy/filtersets.py:68
-#: netbox/tenancy/filtersets.py:111
+#: netbox/tenancy/filtersets.py:40 netbox/tenancy/filtersets.py:67
+#: netbox/tenancy/filtersets.py:110
msgid "Contact group (ID)"
msgstr ""
-#: netbox/tenancy/filtersets.py:48 netbox/tenancy/filtersets.py:75
-#: netbox/tenancy/filtersets.py:118
+#: netbox/tenancy/filtersets.py:47 netbox/tenancy/filtersets.py:74
+#: netbox/tenancy/filtersets.py:117
msgid "Contact group (slug)"
msgstr ""
-#: netbox/tenancy/filtersets.py:105
+#: netbox/tenancy/filtersets.py:104
msgid "Contact (ID)"
msgstr ""
-#: netbox/tenancy/filtersets.py:122
+#: netbox/tenancy/filtersets.py:121
msgid "Contact role (ID)"
msgstr ""
-#: netbox/tenancy/filtersets.py:128
+#: netbox/tenancy/filtersets.py:127
msgid "Contact role (slug)"
msgstr ""
-#: netbox/tenancy/filtersets.py:159
+#: netbox/tenancy/filtersets.py:158
msgid "Contact group"
msgstr ""
-#: netbox/tenancy/filtersets.py:170
+#: netbox/tenancy/filtersets.py:169
msgid "Parent tenant group (ID)"
msgstr ""
-#: netbox/tenancy/filtersets.py:176
+#: netbox/tenancy/filtersets.py:175
msgid "Parent tenant group (slug)"
msgstr ""
-#: netbox/tenancy/filtersets.py:182 netbox/tenancy/filtersets.py:202
+#: netbox/tenancy/filtersets.py:181 netbox/tenancy/filtersets.py:201
msgid "Tenant group (ID)"
msgstr ""
-#: netbox/tenancy/filtersets.py:235
+#: netbox/tenancy/filtersets.py:234
msgid "Tenant Group (ID)"
msgstr ""
-#: netbox/tenancy/filtersets.py:242
+#: netbox/tenancy/filtersets.py:241
msgid "Tenant Group (slug)"
msgstr ""
@@ -14493,7 +14511,7 @@ msgid "Invalid value for a multiple choice field: {value}"
msgstr ""
#: netbox/utilities/forms/fields/csv.py:57
-#: netbox/utilities/forms/fields/csv.py:74
+#: netbox/utilities/forms/fields/csv.py:78
#, python-format
msgid "Object not found: %(value)s"
msgstr ""
@@ -14504,11 +14522,16 @@ msgid ""
"\"{value}\" is not a unique value for this field; multiple objects were found"
msgstr ""
-#: netbox/utilities/forms/fields/csv.py:97
-msgid "Object type must be specified as \".\""
+#: netbox/utilities/forms/fields/csv.py:69
+#, python-brace-format
+msgid "\"{field_name}\" is an invalid accessor field name."
msgstr ""
#: netbox/utilities/forms/fields/csv.py:101
+msgid "Object type must be specified as \".\""
+msgstr ""
+
+#: netbox/utilities/forms/fields/csv.py:105
msgid "Invalid object type"
msgstr ""
@@ -15054,19 +15077,19 @@ msgstr ""
msgid "Group {n}"
msgstr ""
-#: netbox/vpn/choices.py:241
+#: netbox/vpn/choices.py:243
msgid "Ethernet Private LAN"
msgstr ""
-#: netbox/vpn/choices.py:242
+#: netbox/vpn/choices.py:244
msgid "Ethernet Virtual Private LAN"
msgstr ""
-#: netbox/vpn/choices.py:245
+#: netbox/vpn/choices.py:247
msgid "Ethernet Private Tree"
msgstr ""
-#: netbox/vpn/choices.py:246
+#: netbox/vpn/choices.py:248
msgid "Ethernet Virtual Private Tree"
msgstr ""
diff --git a/netbox/translations/es/LC_MESSAGES/django.mo b/netbox/translations/es/LC_MESSAGES/django.mo
index 67ba55dde..78be56eb3 100644
Binary files a/netbox/translations/es/LC_MESSAGES/django.mo and b/netbox/translations/es/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/es/LC_MESSAGES/django.po b/netbox/translations/es/LC_MESSAGES/django.po
index 000ea9d09..92b1d83c5 100644
--- a/netbox/translations/es/LC_MESSAGES/django.po
+++ b/netbox/translations/es/LC_MESSAGES/django.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Spanish (https://app.transifex.com/netbox-community/teams/178115/es/)\n"
@@ -88,8 +88,8 @@ msgstr "La contraseña se ha cambiado correctamente."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -102,7 +102,7 @@ msgstr "Aprovisionamiento"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -113,8 +113,8 @@ msgid "Active"
msgstr "Activo"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Desconectado"
@@ -127,7 +127,7 @@ msgstr "Desaprovisionamiento"
msgid "Decommissioned"
msgstr "Desmantelado"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Primaria"
@@ -333,7 +333,7 @@ msgstr "Terminación A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -571,8 +571,8 @@ msgstr "ID de servicio"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -609,7 +609,7 @@ msgstr "Color"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -666,8 +666,8 @@ msgstr "Cuenta de proveedor"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -816,7 +816,7 @@ msgstr "Parámetros de servicio"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1399,11 +1399,11 @@ msgstr "redes de proveedores"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1541,7 +1541,7 @@ msgstr "Tasa de compromiso"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1620,7 +1620,7 @@ msgstr "Completado"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Falló"
@@ -1946,7 +1946,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr "Elevaciones de estanterías"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2526,7 +2526,7 @@ msgid "Staging"
msgstr "Puesta en escena"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Desmantelamiento"
@@ -2590,7 +2590,7 @@ msgstr "Obsoleto"
msgid "Millimeters"
msgstr "Milímetros"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Pulgadas"
@@ -2612,9 +2612,9 @@ msgstr "De atrás hacia adelante"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2644,15 +2644,15 @@ msgstr "Padre"
msgid "Child"
msgstr "Niño"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Delantera"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2680,7 +2680,7 @@ msgid "Side to rear"
msgstr "De lado a atrás"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Pasivo"
@@ -2688,15 +2688,15 @@ msgstr "Pasivo"
msgid "Mixed"
msgstr "Mezclado"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (sin bloqueo)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (Bloqueo)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Estilo californiano"
@@ -2704,42 +2704,42 @@ msgstr "Estilo californiano"
msgid "International/ITA"
msgstr "Internacional/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Proprietario"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Otros"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/Internacional"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Físico"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Virtual"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "inalámbrico"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Interfaces virtuales"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2749,27 +2749,27 @@ msgstr "Interfaces virtuales"
msgid "Bridge"
msgstr "puente"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Grupo de agregación de enlaces (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (fijo)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modular)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (placa base)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Celular"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2777,129 +2777,130 @@ msgstr "Celular"
msgid "Serial"
msgstr "serie"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Coaxial"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Apilamiento"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Mitad"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Lleno"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Auto"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Acceso"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Etiquetado"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Etiquetado (Todos)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "Estándar IEEE"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Pasivo 24 V (2 pares)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Pasivo de 24 V (4 pares)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Pasivo 48 V (2 pares)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Pasivo de 48 V (4 pares)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Cobre"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Fibra óptica"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Fibra"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Conectado"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Kilómetros"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Medidores"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Centímetros"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Millas"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Pies"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Kilogramos"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Gramos"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Libras"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Onzas"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Redundante"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Monofásico"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Trifásico"
@@ -3269,7 +3270,7 @@ msgstr "VID asignado"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3348,7 +3349,7 @@ msgid "LAG interface (ID)"
msgstr "Interfaz LAG (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Contexto de dispositivo virtual"
@@ -3423,7 +3424,7 @@ msgstr "Etiquetas"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3470,9 +3471,9 @@ msgstr "Zona horaria"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3596,9 +3597,9 @@ msgstr "Numeración"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3688,7 +3689,7 @@ msgstr "Estante"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Hardware"
@@ -3796,15 +3797,15 @@ msgstr "Plataforma"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3948,7 +3949,7 @@ msgstr "Consumo de energía asignado (vatios)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Puerto de alimentación"
@@ -4036,14 +4037,14 @@ msgstr "Modo"
msgid "VLAN group"
msgstr "Grupo de VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "VLAN sin etiquetar"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4062,7 +4063,7 @@ msgid "Wireless LANs"
msgstr "LAN inalámbricas"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4071,24 +4072,24 @@ msgid "Addressing"
msgstr "Dirigiéndose"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Operación"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Interfaces relacionadas"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4430,7 +4431,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} no está asignado al dispositivo {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Puerto trasero"
@@ -4444,7 +4445,7 @@ msgstr "Puerto trasero correspondiente"
msgid "Physical medium classification"
msgstr "Clasificación de medios físicos"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Dispositivo instalado"
@@ -4533,7 +4534,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} no se encontró la terminación lateral: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4563,6 +4564,28 @@ msgstr "Tipo de alimentación (AC/DC)"
msgid "Single or three-phase"
msgstr "Monofásico o trifásico"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "IPv4 principal"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "Dirección IPv4 con máscara, p. ej. 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "IPv6 principal"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "Dirección IPv6 con longitud de prefijo, por ejemplo, 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4726,7 +4749,7 @@ msgstr "Amable"
msgid "Mgmt only"
msgstr "Solo administración"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4760,7 +4783,7 @@ msgstr "Potencia de transmisión (dBm)"
msgid "Cable"
msgstr "Cable"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Descubierto"
@@ -4860,8 +4883,8 @@ msgstr "Plantilla de puerto de alimentación"
msgid "Rear port template"
msgstr "Plantilla de puerto trasero"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4885,7 +4908,7 @@ msgstr "Plantilla de puerto trasero"
msgid "Interface"
msgstr "Interfaz"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4893,14 +4916,14 @@ msgstr "Interfaz"
msgid "Console Port"
msgstr "Puerto de consola"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Puerto de servidor de consola"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4911,8 +4934,8 @@ msgstr "Puerto de servidor de consola"
msgid "Front Port"
msgstr "Puerto frontal"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4924,24 +4947,24 @@ msgstr "Puerto frontal"
msgid "Rear Port"
msgstr "Puerto trasero"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Puerto de alimentación"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Toma de corriente"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Asignación de componentes"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "Un InventoryItem solo se puede asignar a un único componente."
@@ -4949,11 +4972,15 @@ msgstr "Un InventoryItem solo se puede asignar a un único componente."
msgid "LAG interface"
msgstr "Interfaz LAG"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filtre las VLAN disponibles para la asignación por grupo."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Dispositivo infantil"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4961,44 +4988,32 @@ msgstr ""
"Los dispositivos secundarios primero deben crearse y asignarse al sitio y al"
" rack del dispositivo principal."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Puerto de consola"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Puerto de servidor de consola"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Puerto frontal"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "toma de corriente"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Artículo de inventario"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Función del artículo de inventario"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "IPv4 principal"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "IPv6 principal"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5059,7 +5074,7 @@ msgstr ""
"coincidir con el número seleccionado de posiciones de los puertos traseros "
"({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6692,7 +6707,7 @@ msgstr "Plantilla de configuración"
msgid "Site Group"
msgstr "Grupo de sitios"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6701,12 +6716,12 @@ msgstr "Grupo de sitios"
msgid "IP Address"
msgstr "Dirección IP"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "Dirección IPv4"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "Dirección IPv6"
@@ -6744,7 +6759,7 @@ msgstr "Puertos de alimentación"
msgid "Power outlets"
msgstr "tomas de corriente"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6851,28 +6866,28 @@ msgstr "Solo administración"
msgid "VDCs"
msgstr "VDC"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Módulo instalado"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Serie del módulo"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Etiqueta de activo del módulo"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Estado del módulo"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Componente"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Artículos"
@@ -10498,7 +10513,7 @@ msgstr ""
msgid "Range boundaries must be defined as integers."
msgstr "Los límites del rango se deben definir como números enteros."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} debe implementar get_view_name ()"
@@ -10856,33 +10871,33 @@ msgstr "Campo personalizado '{name}'debe tener un valor único."
msgid "Missing required custom field '{name}'."
msgstr "Falta el campo personalizado obligatorio '{name}'."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Fuente de datos remota"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "ruta de datos"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Ruta al archivo remoto (relativa a la raíz de la fuente de datos)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "sincronización automática habilitada"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Habilitar la sincronización automática de datos cuando se actualiza el "
"archivo de datos"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "fecha sincronizada"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} debe implementar un método sync_data ()."
@@ -12630,7 +12645,7 @@ msgid "Parent Bay"
msgstr "Bahía para padres"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Regenera a Slug"
@@ -12975,17 +12990,17 @@ msgstr "Peso máximo"
msgid "Total Weight"
msgstr "Peso total"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Imágenes y etiquetas"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Solo imágenes"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Solo etiquetas"
@@ -15285,15 +15300,15 @@ msgstr "Cancelar suscripción"
msgid "Subscribe"
msgstr "Suscríbase"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Copiar al portapapeles"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Este campo es obligatorio"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Establecer nulo"
diff --git a/netbox/translations/fr/LC_MESSAGES/django.mo b/netbox/translations/fr/LC_MESSAGES/django.mo
index 9e38972f9..0e5ba6615 100644
Binary files a/netbox/translations/fr/LC_MESSAGES/django.mo and b/netbox/translations/fr/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/fr/LC_MESSAGES/django.po b/netbox/translations/fr/LC_MESSAGES/django.po
index d2f01fbce..6f155f4a2 100644
--- a/netbox/translations/fr/LC_MESSAGES/django.po
+++ b/netbox/translations/fr/LC_MESSAGES/django.po
@@ -18,7 +18,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: French (https://app.transifex.com/netbox-community/teams/178115/fr/)\n"
@@ -95,8 +95,8 @@ msgstr "Votre mot de passe a été modifié avec succès."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -109,7 +109,7 @@ msgstr "Approvisionnement"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -120,8 +120,8 @@ msgid "Active"
msgstr "Actif"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Hors ligne"
@@ -134,7 +134,7 @@ msgstr "Déprovisionnement"
msgid "Decommissioned"
msgstr "Mis hors service"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Primaire"
@@ -340,7 +340,7 @@ msgstr "Terminaison A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -578,8 +578,8 @@ msgstr "Identifiant du service"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -616,7 +616,7 @@ msgstr "Couleur"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -673,8 +673,8 @@ msgstr "Identifiant de compte du prestataire"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -823,7 +823,7 @@ msgstr "Paramètres du service"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1406,11 +1406,11 @@ msgstr "réseaux de fournisseurs"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1548,7 +1548,7 @@ msgstr "Bande passante garantie"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1628,7 +1628,7 @@ msgstr "Terminé"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Échoué"
@@ -1956,7 +1956,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr "Élévations des baies"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2539,7 +2539,7 @@ msgid "Staging"
msgstr "Mise en scène"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Démantèlement"
@@ -2603,7 +2603,7 @@ msgstr "Obsolète"
msgid "Millimeters"
msgstr "Millimètres"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Pouces"
@@ -2625,9 +2625,9 @@ msgstr "De l'arrière vers l'avant"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2657,15 +2657,15 @@ msgstr "Parent"
msgid "Child"
msgstr "Enfant"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Avant"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2693,7 +2693,7 @@ msgid "Side to rear"
msgstr "D'un côté à l'arrière"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Passif"
@@ -2701,15 +2701,15 @@ msgstr "Passif"
msgid "Mixed"
msgstr "Mixte"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (non verrouillable)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (verrouillage)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Style californien"
@@ -2717,42 +2717,42 @@ msgstr "Style californien"
msgid "International/ITA"
msgstr "International/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Propriétaire"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Autres"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/International"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Physique"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Virtuel"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Sans fil"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Interfaces virtuelles"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2762,27 +2762,27 @@ msgstr "Interfaces virtuelles"
msgid "Bridge"
msgstr "Passerelle"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Groupe d'agrégation de liens (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (fixe)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modulaire)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (panneau arrière)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Cellulaire"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2790,129 +2790,130 @@ msgstr "Cellulaire"
msgid "Serial"
msgstr "Série"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Coaxiale"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Empilage"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "La moitié"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Complet"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Automatique"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Accès"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Tagué"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Tagué (Tous)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "Norme IEEE"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "24 V passif (2 paires)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "24 V passif (4 paires)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "48 V passif (2 paires)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "48 V passif (4 paires)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Cuivre"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "fibre optique"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Fibre"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Connecté"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Kilomètres"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Compteurs"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Centimètres"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Miles"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Pieds"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Kilogrammes"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Grammes"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Livres"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Onces"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Redondant"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Monophasé"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Triphasé"
@@ -3282,7 +3283,7 @@ msgstr "VID attribué"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3361,7 +3362,7 @@ msgid "LAG interface (ID)"
msgstr "Interface LAG (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Contexte du périphérique virtuel"
@@ -3436,7 +3437,7 @@ msgstr "Balises"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3483,9 +3484,9 @@ msgstr "Fuseau horaire"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3609,9 +3610,9 @@ msgstr "Numérotation"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3701,7 +3702,7 @@ msgstr "Baie"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Matériel"
@@ -3809,15 +3810,15 @@ msgstr "Plateforme"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3961,7 +3962,7 @@ msgstr "Consommation électrique allouée (watts)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "port d'alimentation"
@@ -4049,14 +4050,14 @@ msgstr "Mode"
msgid "VLAN group"
msgstr "groupe VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "VLAN non balisé"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4075,7 +4076,7 @@ msgid "Wireless LANs"
msgstr "Réseaux locaux sans fil"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4084,24 +4085,24 @@ msgid "Addressing"
msgstr "Adressage"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Fonctionnement"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Interfaces associées"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4442,7 +4443,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} n'est pas attribué à l'appareil {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Port arrière"
@@ -4456,7 +4457,7 @@ msgstr "Port arrière correspondant"
msgid "Physical medium classification"
msgstr "Classification des supports physiques"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Appareil installé"
@@ -4545,7 +4546,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} terminaison latérale introuvable : {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4575,6 +4576,28 @@ msgstr "Type d'alimentation (AC/DC)"
msgid "Single or three-phase"
msgstr "Monophasé ou triphasé"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "IPv4 principal"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "Adresse IPv4 avec masque, par exemple 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "IPv6 principal"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "Adresse IPv6 avec longueur de préfixe, par exemple 2001:db8 : :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4739,7 +4762,7 @@ msgstr "Type"
msgid "Mgmt only"
msgstr "Gestion uniquement"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4773,7 +4796,7 @@ msgstr "Puissance de transmission (dBm)"
msgid "Cable"
msgstr "câble"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Découvert"
@@ -4872,8 +4895,8 @@ msgstr "Modèle de port d'alimentation"
msgid "Rear port template"
msgstr "Modèle de port arrière"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4897,7 +4920,7 @@ msgstr "Modèle de port arrière"
msgid "Interface"
msgstr "Interface"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4905,14 +4928,14 @@ msgstr "Interface"
msgid "Console Port"
msgstr "Port de console"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Port du serveur de consoles"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4923,8 +4946,8 @@ msgstr "Port du serveur de consoles"
msgid "Front Port"
msgstr "Port avant"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4936,24 +4959,24 @@ msgstr "Port avant"
msgid "Rear Port"
msgstr "Port arrière"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Port d'alimentation"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Prise de courant"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Affectation des composants"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "Un item d'inventaire ne peut être attribué qu'à un seul composant."
@@ -4961,11 +4984,15 @@ msgstr "Un item d'inventaire ne peut être attribué qu'à un seul composant."
msgid "LAG interface"
msgstr "Interface LAG"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filtrez les VLAN disponibles pour une attribution par groupe."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Appareil pour enfants"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4973,44 +5000,32 @@ msgstr ""
"Les appareils enfants doivent d'abord être créés et affectés au site et à la"
" baie de l'appareil parent."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Port de console"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Port du serveur de console"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Port avant"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "prise de courant"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Article d'inventaire"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Rôle de l'article d'inventaire"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "IPv4 principal"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "IPv6 principal"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5068,7 +5083,7 @@ msgstr ""
"Le nombre de ports frontaux à créer ({frontport_count}) doit correspondre au"
" nombre sélectionné de positions des ports arrière ({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6700,7 +6715,7 @@ msgstr "Modèle de configuration"
msgid "Site Group"
msgstr "Groupe de sites"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6709,12 +6724,12 @@ msgstr "Groupe de sites"
msgid "IP Address"
msgstr "Adresse IP"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "Adresse IPv4"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "Adresse IPv6"
@@ -6752,7 +6767,7 @@ msgstr "Ports d'alimentation"
msgid "Power outlets"
msgstr "Prises de courant"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6859,28 +6874,28 @@ msgstr "Gestion uniquement"
msgid "VDCs"
msgstr "VDC"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Module installé"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Série du module"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Étiquette d'actif du module"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "État du module"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Composant"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Objets"
@@ -10539,7 +10554,7 @@ msgid "Range boundaries must be defined as integers."
msgstr ""
"Les limites des plages doivent être définies sous forme de nombres entiers."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} doit implémenter get_view_name ()"
@@ -10897,35 +10912,35 @@ msgstr "Champ personnalisé '{name}'doit avoir une valeur unique."
msgid "Missing required custom field '{name}'."
msgstr "Champ personnalisé obligatoire manquant '{name}'."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Source de données distante"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "chemin de données"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr ""
"Chemin vers le fichier distant (par rapport à la racine de la source de "
"données)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "synchronisation automatique activée"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Activer la synchronisation automatique des données lors de la mise à jour du"
" fichier de données"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "date de synchronisation"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} doit implémenter une méthode sync_data ()."
@@ -12676,7 +12691,7 @@ msgid "Parent Bay"
msgstr "Baie Parent"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Régénérez le slug"
@@ -13021,17 +13036,17 @@ msgstr "Poids maximum"
msgid "Total Weight"
msgstr "Poids total"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Images et étiquettes"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Images uniquement"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Étiquettes uniquement"
@@ -15329,15 +15344,15 @@ msgstr "Désabonnement"
msgid "Subscribe"
msgstr "Souscrire"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Copier dans le presse-papiers"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Ce champ est obligatoire"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Définir à Null"
diff --git a/netbox/translations/it/LC_MESSAGES/django.mo b/netbox/translations/it/LC_MESSAGES/django.mo
index 76aa1a604..24e79bb4d 100644
Binary files a/netbox/translations/it/LC_MESSAGES/django.mo and b/netbox/translations/it/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/it/LC_MESSAGES/django.po b/netbox/translations/it/LC_MESSAGES/django.po
index 020f1d855..ecc49467c 100644
--- a/netbox/translations/it/LC_MESSAGES/django.po
+++ b/netbox/translations/it/LC_MESSAGES/django.po
@@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Italian (https://app.transifex.com/netbox-community/teams/178115/it/)\n"
@@ -91,8 +91,8 @@ msgstr "La tua password è stata cambiata con successo."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -105,7 +105,7 @@ msgstr "Approvvigionamento"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -116,8 +116,8 @@ msgid "Active"
msgstr "Attivo"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Offline"
@@ -130,7 +130,7 @@ msgstr "Deprovisioning"
msgid "Decommissioned"
msgstr "Dismesso"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Primaria"
@@ -336,7 +336,7 @@ msgstr "Terminazione A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -574,8 +574,8 @@ msgstr "ID del servizio"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -612,7 +612,7 @@ msgstr "Colore"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -669,8 +669,8 @@ msgstr "Provider account "
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -819,7 +819,7 @@ msgstr "Parametri del servizio"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1402,11 +1402,11 @@ msgstr "reti di fornitori"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1544,7 +1544,7 @@ msgstr "Tasso di impegno"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1625,7 +1625,7 @@ msgstr "Completato"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Fallito"
@@ -1950,7 +1950,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr "Elevazioni dei rack"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2532,7 +2532,7 @@ msgid "Staging"
msgstr "Messa in scena"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Smantellamento"
@@ -2596,7 +2596,7 @@ msgstr "Obsoleto"
msgid "Millimeters"
msgstr "Millimetri"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Pollici"
@@ -2618,9 +2618,9 @@ msgstr "Posteriore/anteriore"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2650,15 +2650,15 @@ msgstr "Genitore"
msgid "Child"
msgstr "Bambino"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Anteriore"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2686,7 +2686,7 @@ msgid "Side to rear"
msgstr "Da lato a retro"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Passivo"
@@ -2694,15 +2694,15 @@ msgstr "Passivo"
msgid "Mixed"
msgstr "Misto"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (non bloccante)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (bloccaggio)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Stile californiano"
@@ -2710,42 +2710,42 @@ msgstr "Stile californiano"
msgid "International/ITA"
msgstr "Internazionale/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Proprietario"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Altro"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/Internazionale"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Fisico"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Virtuale"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Wireless"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Interfacce virtuali"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2755,27 +2755,27 @@ msgstr "Interfacce virtuali"
msgid "Bridge"
msgstr "ponte"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Link Aggregation Group (GAL)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (fisso)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modulare)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (backplane)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Cellulare"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2783,129 +2783,130 @@ msgstr "Cellulare"
msgid "Serial"
msgstr "Seriale"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Coassiale"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "impilamento"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Metà"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Completo"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Auto"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Accesso"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Taggato"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Contrassegnati (tutti)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "Norma IEEE"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "24V passivo (2 coppie)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "24V passivo (4 coppie)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "48V passivo (2 coppie)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "48V passivo (4 coppie)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Rame"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Fibra ottica"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Fibra"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Connesso"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Chilometri"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Metri"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Centimetri"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Miglia"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Piedi"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Chilogrammi"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Grammi"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Sterline"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Once"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Ridondante"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Monofase"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Trifase"
@@ -3275,7 +3276,7 @@ msgstr "VID assegnato"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3354,7 +3355,7 @@ msgid "LAG interface (ID)"
msgstr "Interfaccia LAG (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Contesto del dispositivo virtuale"
@@ -3429,7 +3430,7 @@ msgstr "Etichette"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3476,9 +3477,9 @@ msgstr "Fuso orario"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3602,9 +3603,9 @@ msgstr "Numerazione"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3694,7 +3695,7 @@ msgstr "cremagliera"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Hardware"
@@ -3802,15 +3803,15 @@ msgstr "piattaforma"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3954,7 +3955,7 @@ msgstr "Potenza assorbita allocata (watt)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Porta di alimentazione"
@@ -4042,14 +4043,14 @@ msgstr "modalità"
msgid "VLAN group"
msgstr "Gruppo VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "VLAN senza tag"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4068,7 +4069,7 @@ msgid "Wireless LANs"
msgstr "LAN wireless"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4077,24 +4078,24 @@ msgid "Addressing"
msgstr "Indirizzamento"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Operazione"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Interfacce correlate"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4436,7 +4437,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} non è assegnato al dispositivo {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Porta posteriore"
@@ -4450,7 +4451,7 @@ msgstr "Porta posteriore corrispondente"
msgid "Physical medium classification"
msgstr "Classificazione del mezzo fisico"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Dispositivo installato"
@@ -4540,7 +4541,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} terminazione laterale non trovata: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4570,6 +4571,28 @@ msgstr "Tipo di alimentazione (AC/DC)"
msgid "Single or three-phase"
msgstr "Monofase o trifase"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "IPv4 primario"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "Indirizzo IPv4 con maschera, ad esempio 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "IPv6 primario"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "Indirizzo IPv6 con lunghezza del prefisso, ad esempio 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4733,7 +4756,7 @@ msgstr "Gentile"
msgid "Mgmt only"
msgstr "Solo gestione"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4767,7 +4790,7 @@ msgstr "Potenza di trasmissione (dBm)"
msgid "Cable"
msgstr "Cavo"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Scoperto"
@@ -4869,8 +4892,8 @@ msgstr "Modello di porta di alimentazione"
msgid "Rear port template"
msgstr "Modello di porta posteriore"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4894,7 +4917,7 @@ msgstr "Modello di porta posteriore"
msgid "Interface"
msgstr "Interfaccia"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4902,14 +4925,14 @@ msgstr "Interfaccia"
msgid "Console Port"
msgstr "Porta console"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Porta Console Server"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4920,8 +4943,8 @@ msgstr "Porta Console Server"
msgid "Front Port"
msgstr "Porta anteriore"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4933,24 +4956,24 @@ msgstr "Porta anteriore"
msgid "Rear Port"
msgstr "Porta posteriore"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Porta di alimentazione"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Presa di corrente"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Assegnazione dei componenti"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "Un InventoryItem può essere assegnato solo a un singolo componente."
@@ -4958,11 +4981,15 @@ msgstr "Un InventoryItem può essere assegnato solo a un singolo componente."
msgid "LAG interface"
msgstr "Interfaccia LAG"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filtra le VLAN disponibili per l'assegnazione per gruppo."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Dispositivo per bambini"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4970,44 +4997,32 @@ msgstr ""
"I dispositivi secondari devono prima essere creati e assegnati al sito e al "
"rack del dispositivo principale."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Porta console"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Porta console server"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Porta anteriore"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Presa di corrente"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Articolo di inventario"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Ruolo dell'articolo di inventario"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "IPv4 primario"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "IPv6 primario"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5068,7 +5083,7 @@ msgstr ""
" al numero selezionato di posizioni delle porte posteriori "
"({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6717,7 +6732,7 @@ msgstr "Modello di configurazione"
msgid "Site Group"
msgstr "Gruppo del sito"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6726,12 +6741,12 @@ msgstr "Gruppo del sito"
msgid "IP Address"
msgstr "Indirizzo IP"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "Indirizzo IPv4"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "Indirizzo IPv6"
@@ -6769,7 +6784,7 @@ msgstr "Porte di alimentazione"
msgid "Power outlets"
msgstr "Prese di corrente"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6876,28 +6891,28 @@ msgstr "Solo gestione"
msgid "VDCs"
msgstr "VDC"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Modulo installato"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Modulo seriale"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Tag delle risorse del modulo"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Stato del modulo"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Componente"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Oggetti"
@@ -10532,7 +10547,7 @@ msgstr ""
msgid "Range boundaries must be defined as integers."
msgstr "I limiti dell'intervallo devono essere definiti come numeri interi."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} deve implementare get_view_name ()"
@@ -10889,33 +10904,33 @@ msgstr "Campo personalizzato '{name}'deve avere un valore univoco."
msgid "Missing required custom field '{name}'."
msgstr "Campo personalizzato obbligatorio mancante '{name}»."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Fonte dati remota"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "percorso dati"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Percorso del file remoto (relativo alla radice dell'origine dati)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "sincronizzazione automatica abilitata"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Abilita la sincronizzazione automatica dei dati quando il file di dati viene"
" aggiornato"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "data sincronizzata"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} deve implementare un metodo sync_data ()."
@@ -12662,7 +12677,7 @@ msgid "Parent Bay"
msgstr "Baia dei genitori"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Rigenera la lumaca"
@@ -13007,17 +13022,17 @@ msgstr "Peso massimo"
msgid "Total Weight"
msgstr "Peso totale"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Immagini ed etichette"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Solo immagini"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Solo etichette"
@@ -15312,15 +15327,15 @@ msgstr "Annulla l'iscrizione"
msgid "Subscribe"
msgstr "Abbonati"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Copia negli appunti"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Questo campo è obbligatorio"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Imposta Null"
diff --git a/netbox/translations/ja/LC_MESSAGES/django.mo b/netbox/translations/ja/LC_MESSAGES/django.mo
index 210a0699f..c0900e5b4 100644
Binary files a/netbox/translations/ja/LC_MESSAGES/django.mo and b/netbox/translations/ja/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/ja/LC_MESSAGES/django.po b/netbox/translations/ja/LC_MESSAGES/django.po
index d6e811e73..0e31a6288 100644
--- a/netbox/translations/ja/LC_MESSAGES/django.po
+++ b/netbox/translations/ja/LC_MESSAGES/django.po
@@ -4,18 +4,18 @@
# FIRST AUTHOR , YEAR.
#
# Translators:
-# Jeremy Stretch, 2024
# Tatsuya Ueda , 2024
# teapot, 2024
+# Jeremy Stretch, 2024
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
-"Last-Translator: teapot, 2024\n"
+"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Japanese (https://app.transifex.com/netbox-community/teams/178115/ja/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -88,8 +88,8 @@ msgstr "パスワードは正常に変更されました。"
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -102,7 +102,7 @@ msgstr "プロビジョニング"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -113,8 +113,8 @@ msgid "Active"
msgstr "アクティブ"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "オフライン"
@@ -127,7 +127,7 @@ msgstr "デプロビジョニング"
msgid "Decommissioned"
msgstr "廃止"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "プライマリ"
@@ -333,7 +333,7 @@ msgstr "ターミネーション A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -571,8 +571,8 @@ msgstr "サービス ID"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -609,7 +609,7 @@ msgstr "色"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -666,8 +666,8 @@ msgstr "プロバイダアカウント"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -816,7 +816,7 @@ msgstr "サービス情報"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1395,11 +1395,11 @@ msgstr "プロバイダネットワーク"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1537,7 +1537,7 @@ msgstr "保証帯域"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1616,7 +1616,7 @@ msgstr "完了"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "失敗"
@@ -1940,7 +1940,7 @@ msgstr "同期するファイルをアップロードするか、データファ
msgid "Rack Elevations"
msgstr "ラック図"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2510,7 +2510,7 @@ msgid "Staging"
msgstr "ステージング"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "廃止"
@@ -2574,7 +2574,7 @@ msgstr "廃止済"
msgid "Millimeters"
msgstr "ミリメートル"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "インチ"
@@ -2596,9 +2596,9 @@ msgstr "背面から前面"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2628,15 +2628,15 @@ msgstr "親"
msgid "Child"
msgstr "子"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "前面"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2664,7 +2664,7 @@ msgid "Side to rear"
msgstr "側面から背面"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "パッシブ"
@@ -2672,15 +2672,15 @@ msgstr "パッシブ"
msgid "Mixed"
msgstr "混合"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (ロック無)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (ロック有)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "California Style"
@@ -2688,42 +2688,42 @@ msgstr "California Style"
msgid "International/ITA"
msgstr "International/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "独自規格"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "その他"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/International"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "物理"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "仮想"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "無線"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "仮想インタフェース"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2733,27 +2733,27 @@ msgstr "仮想インタフェース"
msgid "Bridge"
msgstr "ブリッジ"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "リンクアグリゲーション (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "イーサネット (固定)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "イーサネット (モジュール)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "イーサネット (バックプレーン)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "セルラー"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2761,129 +2761,130 @@ msgstr "セルラー"
msgid "Serial"
msgstr "シリアル"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "同軸"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "スタック"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "半二重"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "全二重"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "自動"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "アクセス"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "タグ付き"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "タグ付き (全て)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "IEEE スタンダード"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "パッシブ 24V (2 ペア)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "パッシブ 24V (4ペア)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "パッシブ 48V (2 ペア)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "パッシブ 48V (4ペア)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "カッパー"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "光ファイバー"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "ファイバー"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "接続済"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "キロメートル"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "メートル"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "センチメートル"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "マイル"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "フィート"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "キログラム"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "グラム"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "ポンド"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "オンス"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "冗長"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "単相"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "三相"
@@ -3253,7 +3254,7 @@ msgstr "割当 VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3332,7 +3333,7 @@ msgid "LAG interface (ID)"
msgstr "LAG インタフェース (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "仮想デバイスコンテキスト"
@@ -3407,7 +3408,7 @@ msgstr "タグ"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3452,9 +3453,9 @@ msgstr "タイムゾーン"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3578,9 +3579,9 @@ msgstr "ナンバリング"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3670,7 +3671,7 @@ msgstr "ラック"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "ハードウェア"
@@ -3778,15 +3779,15 @@ msgstr "プラットフォーム"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3930,7 +3931,7 @@ msgstr "割当消費電力 (ワット)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "電源ポート"
@@ -4018,14 +4019,14 @@ msgstr "モード"
msgid "VLAN group"
msgstr "VLAN グループ"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "タグなし VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4044,7 +4045,7 @@ msgid "Wireless LANs"
msgstr "無線 LAN"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4053,24 +4054,24 @@ msgid "Addressing"
msgstr "アドレス"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "オペレーション"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "関連インタフェース"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4405,7 +4406,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} デバイスには割り当てられていません {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "背面ポート"
@@ -4419,7 +4420,7 @@ msgstr "対応する背面ポート"
msgid "Physical medium classification"
msgstr "物理媒体の分類"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "取付済みデバイス"
@@ -4508,7 +4509,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} サイドターミネーションが見つかりません: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4538,6 +4539,28 @@ msgstr "電源タイプ (AC/DC)"
msgid "Single or three-phase"
msgstr "単相または三相"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "プライマリ IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "マスク付きの IPv4 アドレス (例:1.2.3.4/24)"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "プライマリ IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "プレフィックス長のある IPv6 アドレス、例:2001: db8:: 1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4696,7 +4719,7 @@ msgstr "種類"
msgid "Mgmt only"
msgstr "管理のみ"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4730,7 +4753,7 @@ msgstr "送信出力 (dBm)"
msgid "Cable"
msgstr "ケーブル"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "自動検出"
@@ -4824,8 +4847,8 @@ msgstr "電源ポートテンプレート"
msgid "Rear port template"
msgstr "背面ポートテンプレート"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4849,7 +4872,7 @@ msgstr "背面ポートテンプレート"
msgid "Interface"
msgstr "インタフェース"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4857,14 +4880,14 @@ msgstr "インタフェース"
msgid "Console Port"
msgstr "コンソールポート"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "コンソールサーバポート"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4875,8 +4898,8 @@ msgstr "コンソールサーバポート"
msgid "Front Port"
msgstr "前面ポート"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4888,24 +4911,24 @@ msgstr "前面ポート"
msgid "Rear Port"
msgstr "背面ポート"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "電源ポート"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "電源コンセント"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "構成要素割り当て"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "在庫品目は1つの構成要素にのみ割り当てることができます。"
@@ -4913,54 +4936,46 @@ msgstr "在庫品目は1つの構成要素にのみ割り当てることがで
msgid "LAG interface"
msgstr "LAG インタフェース"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "割り当て可能な VLAN をグループ別にフィルタリングします。"
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "子デバイス"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
msgstr "まず子デバイスを作成し、親デバイスのサイトとラックに割り当てる必要があります。"
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "コンソールポート"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "コンソールサーバポート"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "前面ポート"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "電源コンセント"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "在庫品目"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "在庫品目ロール"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "プライマリ IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "プライマリ IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5010,7 +5025,7 @@ msgid ""
msgstr ""
"前面ポートの数 ({frontport_count}) は選択した背面ポートの数 ({rearport_count}) と一致する必要があります。"
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6540,7 +6555,7 @@ msgstr "設定テンプレート"
msgid "Site Group"
msgstr "サイトグループ"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6549,12 +6564,12 @@ msgstr "サイトグループ"
msgid "IP Address"
msgstr "IP アドレス"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "IPv4 アドレス"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "IPv6 アドレス"
@@ -6592,7 +6607,7 @@ msgstr "電源ポート"
msgid "Power outlets"
msgstr "電源コンセント"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6699,28 +6714,28 @@ msgstr "管理のみ"
msgid "VDCs"
msgstr "VDC"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "取付済みモジュール"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "モジュールシリアル番号"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "モジュール資産タグ"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "モジュールステータス"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "構成要素"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "アイテム"
@@ -10225,7 +10240,7 @@ msgstr "範囲は (下限、上部) の形式で指定する必要がありま
msgid "Range boundaries must be defined as integers."
msgstr "範囲の境界は整数として定義する必要があります。"
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} get_view_name () を実装する必要があります"
@@ -10572,31 +10587,31 @@ msgstr "カスタムフィールド '{name}'には一意の値が必要です。
msgid "Missing required custom field '{name}'."
msgstr "必須カスタムフィールド'{name}'が見つかりません。"
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "リモートデータソース"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "データパス"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "リモートファイルへのパス (データソースルートからの相対パス)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "自動同期が有効"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr "データファイルの更新時にデータの自動同期を有効にする"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "同期日付"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} はsync_data () メソッドを実装する必要があります。"
@@ -12325,7 +12340,7 @@ msgid "Parent Bay"
msgstr "ペアレントベイ"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "リジェネレートslug"
@@ -12670,17 +12685,17 @@ msgstr "最大重量"
msgid "Total Weight"
msgstr "合計重量"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "画像とラベル"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "画像のみ"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "ラベルのみ"
@@ -14892,15 +14907,15 @@ msgstr "購読解除"
msgid "Subscribe"
msgstr "購読"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "クリップボードにコピー"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "このフィールドは必須です"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "NULL を設定"
diff --git a/netbox/translations/nl/LC_MESSAGES/django.mo b/netbox/translations/nl/LC_MESSAGES/django.mo
index e86add12e..29d8a6af5 100644
Binary files a/netbox/translations/nl/LC_MESSAGES/django.mo and b/netbox/translations/nl/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/nl/LC_MESSAGES/django.po b/netbox/translations/nl/LC_MESSAGES/django.po
index 82e54a67b..72644b3eb 100644
--- a/netbox/translations/nl/LC_MESSAGES/django.po
+++ b/netbox/translations/nl/LC_MESSAGES/django.po
@@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Dutch (https://app.transifex.com/netbox-community/teams/178115/nl/)\n"
@@ -91,8 +91,8 @@ msgstr "Je wachtwoord is succesvol gewijzigd."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -105,7 +105,7 @@ msgstr "Provisioning"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -116,8 +116,8 @@ msgid "Active"
msgstr "Actief"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Offline"
@@ -130,7 +130,7 @@ msgstr "Deprovisioning"
msgid "Decommissioned"
msgstr "Buiten gebruik"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Primair"
@@ -336,7 +336,7 @@ msgstr "Eindpunt A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -574,8 +574,8 @@ msgstr "Service-ID"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -612,7 +612,7 @@ msgstr "Kleur"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -669,8 +669,8 @@ msgstr "Provideraccount"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -819,7 +819,7 @@ msgstr "Serviceparameters"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1402,11 +1402,11 @@ msgstr "providernetwerken"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1544,7 +1544,7 @@ msgstr "Vastleggingspercentage"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1625,7 +1625,7 @@ msgstr "Voltooid"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Mislukt"
@@ -1952,7 +1952,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr "Rackverhogingen"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2532,7 +2532,7 @@ msgid "Staging"
msgstr "Klaarzetten"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Ontmanteling"
@@ -2596,7 +2596,7 @@ msgstr "Verouderd"
msgid "Millimeters"
msgstr "Millimeters"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Inches"
@@ -2618,9 +2618,9 @@ msgstr "Van achter naar voren"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2650,15 +2650,15 @@ msgstr "Ouder"
msgid "Child"
msgstr "Kind"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Voorkant"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2686,7 +2686,7 @@ msgid "Side to rear"
msgstr "Van links naar achteren"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Passief"
@@ -2694,15 +2694,15 @@ msgstr "Passief"
msgid "Mixed"
msgstr "Gemengd"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (niet-vergrendelend)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (vergrendeling)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Californische stijl"
@@ -2710,42 +2710,42 @@ msgstr "Californische stijl"
msgid "International/ITA"
msgstr "Internationaal/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Gepatenteerd"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Andere"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/internationaal"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Fysiek"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Virtueel"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Draadloos"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Virtuele interfaces"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2755,27 +2755,27 @@ msgstr "Virtuele interfaces"
msgid "Bridge"
msgstr "Bridge"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Linkaggregatiegroep (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (vast)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modulair)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (backplane)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Mobiel"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2783,129 +2783,130 @@ msgstr "Mobiel"
msgid "Serial"
msgstr "Serienummer"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Coaxiaal"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Stapelen"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Half"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Volledig"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Auto"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Toegang"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Getagd"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Getagd (Alles)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "IEEE-standaard"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Passief 24V (2 paren)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Passief 24V (4 paren)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Passief 48V (2 paren)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Passief 48V (4 paren)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Koper"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Glasvezel"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Vezel"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Verbonden"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Kilometers"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Meters"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Centimeters"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Mijlen"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Feet"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Kilogrammen"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Gram"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Ponden"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Ons"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Redundant"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Een fase"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Drie fase"
@@ -3275,7 +3276,7 @@ msgstr "Toegewezen VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3354,7 +3355,7 @@ msgid "LAG interface (ID)"
msgstr "LAG-interface (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Context van het virtuele apparaat"
@@ -3429,7 +3430,7 @@ msgstr "Labels"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3476,9 +3477,9 @@ msgstr "Tijdzone"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3602,9 +3603,9 @@ msgstr "Nummering"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3694,7 +3695,7 @@ msgstr "Rek"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Hardware"
@@ -3802,15 +3803,15 @@ msgstr "Platform"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3954,7 +3955,7 @@ msgstr "Toegewezen stroomverbruik (watt)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Voedingspoort"
@@ -4042,14 +4043,14 @@ msgstr "Modus"
msgid "VLAN group"
msgstr "VLAN-groep"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "VLAN zonder label"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4068,7 +4069,7 @@ msgid "Wireless LANs"
msgstr "Draadloze LAN's"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4077,24 +4078,24 @@ msgid "Addressing"
msgstr "Addressing"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Operatie"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Gerelateerde interfaces"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4436,7 +4437,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} is niet toegewezen aan het apparaat {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Poort aan de achterkant"
@@ -4450,7 +4451,7 @@ msgstr "Bijbehorende poort aan de achterkant"
msgid "Physical medium classification"
msgstr "Classificatie van fysieke media"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Geïnstalleerd apparaat"
@@ -4539,7 +4540,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} nevenbeëindiging niet gevonden: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4569,6 +4570,28 @@ msgstr "Soort voeding (AC/DC)"
msgid "Single or three-phase"
msgstr "Enkel- of driefasig"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "Primaire IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "IPv4-adres met masker, bijvoorbeeld 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "Primaire IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "IPv6-adres met prefixlengte, bijvoorbeeld 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4732,7 +4755,7 @@ msgstr "Vriendelijk"
msgid "Mgmt only"
msgstr "Alleen voor beheer"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4766,7 +4789,7 @@ msgstr "Zendvermogen (dBm)"
msgid "Cable"
msgstr "Kabel"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Ontdekt"
@@ -4868,8 +4891,8 @@ msgstr "Sjabloon voor voedingspoort"
msgid "Rear port template"
msgstr "Sjabloon voor achterpoort"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4893,7 +4916,7 @@ msgstr "Sjabloon voor achterpoort"
msgid "Interface"
msgstr "Interface"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4901,14 +4924,14 @@ msgstr "Interface"
msgid "Console Port"
msgstr "Consolepoort"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Console Server-poort"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4919,8 +4942,8 @@ msgstr "Console Server-poort"
msgid "Front Port"
msgstr "Poort Voor"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4932,24 +4955,24 @@ msgstr "Poort Voor"
msgid "Rear Port"
msgstr "Poort achter"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Voedingspoort"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Stopcontact"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Toewijzing van componenten"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "Een InventoryItem kan slechts aan één component worden toegewezen."
@@ -4957,11 +4980,15 @@ msgstr "Een InventoryItem kan slechts aan één component worden toegewezen."
msgid "LAG interface"
msgstr "LAG-interface"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filter-VLAN's die beschikbaar zijn voor toewijzing per groep."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Apparaat voor kinderen"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4969,44 +4996,32 @@ msgstr ""
"Kindapparaten moeten eerst worden aangemaakt en toegewezen aan de site en "
"het rack van het ouderapparaat."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Consolepoort"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Console-serverpoort"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Poort voor"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Stopcontact"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Inventarisitem"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Rol van het inventarisitem"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "Primaire IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "Primaire IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5067,7 +5082,7 @@ msgstr ""
"overeenkomen met het geselecteerde aantal posities aan de achterkant van de "
"poort ({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6694,7 +6709,7 @@ msgstr "Configuratiesjabloon"
msgid "Site Group"
msgstr "Sitegroep"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6703,12 +6718,12 @@ msgstr "Sitegroep"
msgid "IP Address"
msgstr "IP-adres"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "IPv4-adres"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "IPv6-adres"
@@ -6746,7 +6761,7 @@ msgstr "Voedingspoorten"
msgid "Power outlets"
msgstr "Stopcontacten"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6853,28 +6868,28 @@ msgstr "Alleen beheer"
msgid "VDCs"
msgstr "VDC's"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Geïnstalleerde module"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Seriële module"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Tag voor module-bedrijfsmiddelen"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Status van de module"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Onderdeel"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Artikelen"
@@ -10512,7 +10527,7 @@ msgstr ""
msgid "Range boundaries must be defined as integers."
msgstr "Bereikgrenzen moeten worden gedefinieerd als gehele getallen."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} moet get_view_name () implementeren"
@@ -10865,34 +10880,34 @@ msgstr "Aangepast veld '{name}'moet een unieke waarde hebben."
msgid "Missing required custom field '{name}'."
msgstr "Ontbreekt het vereiste aangepaste veld '{name}'."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Externe gegevensbron"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "datapad"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr ""
"Pad naar extern bestand (ten opzichte van de root van de gegevensbron)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "automatische synchronisatie ingeschakeld"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Automatische synchronisatie van gegevens inschakelen wanneer het "
"gegevensbestand wordt bijgewerkt"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "datum gesynchroniseerd"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} moet een sync_data () -methode implementeren."
@@ -12640,7 +12655,7 @@ msgid "Parent Bay"
msgstr "Parent Bay"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Regenereer naaktslak"
@@ -12985,17 +13000,17 @@ msgstr "Maximaal gewicht"
msgid "Total Weight"
msgstr "Totaal gewicht"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Afbeeldingen en labels"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Alleen afbeeldingen"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Alleen labels"
@@ -15291,15 +15306,15 @@ msgstr "Afmelden"
msgid "Subscribe"
msgstr "Abonneer"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Naar klembord kopiëren"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Dit veld is verplicht"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Null instellen"
diff --git a/netbox/translations/pl/LC_MESSAGES/django.mo b/netbox/translations/pl/LC_MESSAGES/django.mo
index f5f82a07d..bcc505e4c 100644
Binary files a/netbox/translations/pl/LC_MESSAGES/django.mo and b/netbox/translations/pl/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/pl/LC_MESSAGES/django.po b/netbox/translations/pl/LC_MESSAGES/django.po
index fbd5a0ea8..eb970b95e 100644
--- a/netbox/translations/pl/LC_MESSAGES/django.po
+++ b/netbox/translations/pl/LC_MESSAGES/django.po
@@ -6,6 +6,7 @@
# Translators:
# Jeff Gehlbach, 2024
# Simplicity sp. z o.o., 2024
+# Grzegorz Szymaszek, 2024
# Jeremy Stretch, 2024
#
#, fuzzy
@@ -13,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Polish (https://app.transifex.com/netbox-community/teams/178115/pl/)\n"
@@ -90,8 +91,8 @@ msgstr "Twoje hasło zostało pomyślnie zmienione."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -104,7 +105,7 @@ msgstr "Zaopatrzenie"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -115,8 +116,8 @@ msgid "Active"
msgstr "Aktywny"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Nieaktywne"
@@ -129,7 +130,7 @@ msgstr "Odstąpienie od zaopatrzenia"
msgid "Decommissioned"
msgstr "Wycofane ze służby"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Podstawowy"
@@ -169,7 +170,7 @@ msgstr "Region (ID)"
#: netbox/ipam/filtersets.py:966 netbox/virtualization/filtersets.py:52
#: netbox/virtualization/filtersets.py:180 netbox/vpn/filtersets.py:364
msgid "Region (slug)"
-msgstr "Region (slug)"
+msgstr "Region (identyfikator)"
#: netbox/circuits/filtersets.py:44 netbox/circuits/filtersets.py:211
#: netbox/dcim/filtersets.py:128 netbox/dcim/filtersets.py:225
@@ -192,7 +193,7 @@ msgstr "Grupa witryn (ID)"
#: netbox/virtualization/filtersets.py:65
#: netbox/virtualization/filtersets.py:193
msgid "Site group (slug)"
-msgstr "Grupa witryn (slug)"
+msgstr "Grupa terenów (identyfikator)"
#: netbox/circuits/filtersets.py:56 netbox/circuits/forms/bulk_edit.py:188
#: netbox/circuits/forms/bulk_edit.py:216
@@ -264,7 +265,7 @@ msgstr "Teren"
#: netbox/virtualization/filtersets.py:75
#: netbox/virtualization/filtersets.py:203 netbox/vpn/filtersets.py:374
msgid "Site (slug)"
-msgstr "Teren (slug)"
+msgstr "Teren (identyfikator)"
#: netbox/circuits/filtersets.py:67
msgid "ASN (ID)"
@@ -287,7 +288,7 @@ msgstr "Dostawca (ID)"
#: netbox/circuits/filtersets.py:162 netbox/circuits/filtersets.py:289
#: netbox/circuits/filtersets.py:331 netbox/ipam/filtersets.py:249
msgid "Provider (slug)"
-msgstr "Dostawca (slug)"
+msgstr "Dostawca (identyfikator)"
#: netbox/circuits/filtersets.py:167
msgid "Provider account (ID)"
@@ -307,7 +308,7 @@ msgstr "Typ obwodu (ID)"
#: netbox/circuits/filtersets.py:188
msgid "Circuit type (slug)"
-msgstr "Typ obwodu (slug)"
+msgstr "Typ obwodu (identyfikator)"
#: netbox/circuits/filtersets.py:223 netbox/circuits/filtersets.py:268
#: netbox/dcim/filtersets.py:236 netbox/dcim/filtersets.py:357
@@ -335,7 +336,7 @@ msgstr "Wypowiedzenie A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -385,7 +386,7 @@ msgstr "Grupa obwodów (ID)"
#: netbox/circuits/filtersets.py:351
msgid "Circuit group (slug)"
-msgstr "Grupa obwodów (ślimak)"
+msgstr "Grupa obwodów (identyfikator)"
#: netbox/circuits/forms/bulk_edit.py:30
#: netbox/circuits/forms/filtersets.py:56
@@ -573,8 +574,8 @@ msgstr "Identyfikator usługi"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -611,7 +612,7 @@ msgstr "Kolor"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -668,8 +669,8 @@ msgstr "Konto dostawcy"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -818,7 +819,7 @@ msgstr "Parametry serwisowe"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1353,7 +1354,7 @@ msgstr "Pełna nazwa dostawcy"
#: netbox/tenancy/models/tenants.py:49 netbox/vpn/models/l2vpn.py:27
#: netbox/wireless/models.py:56
msgid "slug"
-msgstr "slug"
+msgstr "identyfikator"
#: netbox/circuits/models/providers.py:42
msgid "provider"
@@ -1399,11 +1400,11 @@ msgstr "sieci dostawców"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1541,7 +1542,7 @@ msgstr "Współczynnik zatwierdzania"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1620,7 +1621,7 @@ msgstr "Zakończone"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Nie powiodło się"
@@ -1942,9 +1943,9 @@ msgstr "Musisz przesłać plik lub wybrać plik danych do synchronizacji"
#: netbox/core/forms/model_forms.py:153
#: netbox/templates/dcim/rack_elevation_list.html:6
msgid "Rack Elevations"
-msgstr "Elewacje szafy rack"
+msgstr "Elewacje szaf"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2521,7 +2522,7 @@ msgid "Staging"
msgstr "Inscenizacja"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Wycofanie z eksploatacji"
@@ -2585,7 +2586,7 @@ msgstr "Przestarzałe"
msgid "Millimeters"
msgstr "Milimetrów"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Cale"
@@ -2607,9 +2608,9 @@ msgstr "Tył do przodu"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2639,15 +2640,15 @@ msgstr "Rodzic"
msgid "Child"
msgstr "Dziecko"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Przód"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2675,7 +2676,7 @@ msgid "Side to rear"
msgstr "Z boku do tyłu"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Pasywny"
@@ -2683,15 +2684,15 @@ msgstr "Pasywny"
msgid "Mixed"
msgstr "Mieszane"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (bez blokowania)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (Blokowanie)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Styl kalifornijski"
@@ -2699,42 +2700,42 @@ msgstr "Styl kalifornijski"
msgid "International/ITA"
msgstr "Międzynarodowy/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Zastrzeżone"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Pozostałe"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/Międzynarodowy"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Fizyczne"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Wirtualny"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Bezprzewodowy"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Interfejsy wirtualne"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2744,27 +2745,27 @@ msgstr "Interfejsy wirtualne"
msgid "Bridge"
msgstr "Most"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Grupa agregacji linków (LGD)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (stały)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modułowy)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (płaszczyzna tylna)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Komórkowy"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2772,129 +2773,130 @@ msgstr "Komórkowy"
msgid "Serial"
msgstr "Seryjny"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "koncentryczny"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Układanie"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Połowa"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Pełny"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Automatyczny"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Dostęp"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Oznaczone"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Oznaczone (Wszystkie)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "Standard IEEE"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Pasywny 24V (2 pary)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Pasywny 24V (4-parowy)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Pasywny 48V (2 pary)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Pasywny 48V (4 pary)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Miedź"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Światłowód"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Włókno"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Połączony"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Kilometry"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Mierniki"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Centymetry"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Mile"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Stopy"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Kilogramy"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Gramy"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "funty"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Uncja"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Nadmiarowy"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Jednofazowy"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Trójfazowy"
@@ -2914,7 +2916,7 @@ msgstr "Region macierzysty (ID)"
#: netbox/dcim/filtersets.py:92
msgid "Parent region (slug)"
-msgstr "Region macierzysty (ślimak)"
+msgstr "Region macierzysty (identyfikator)"
#: netbox/dcim/filtersets.py:116
msgid "Parent site group (ID)"
@@ -2922,7 +2924,7 @@ msgstr "Nadrzędna grupa witryn (ID)"
#: netbox/dcim/filtersets.py:122
msgid "Parent site group (slug)"
-msgstr "Nadrzędna grupa witryn (ślimak)"
+msgstr "Nadrzędna grupa terenów (identyfikator)"
#: netbox/dcim/filtersets.py:164 netbox/extras/filtersets.py:364
#: netbox/ipam/filtersets.py:841 netbox/ipam/filtersets.py:993
@@ -2931,7 +2933,7 @@ msgstr "Grupa (ID)"
#: netbox/dcim/filtersets.py:170
msgid "Group (slug)"
-msgstr "Grupa (ślimak)"
+msgstr "Grupa (identyfikator)"
#: netbox/dcim/filtersets.py:176 netbox/dcim/filtersets.py:181
msgid "AS (ID)"
@@ -2943,7 +2945,7 @@ msgstr "Lokalizacja nadrzędna (ID)"
#: netbox/dcim/filtersets.py:252
msgid "Parent location (slug)"
-msgstr "Lokalizacja nadrzędna (ślimak)"
+msgstr "Lokalizacja nadrzędna (identyfikator)"
#: netbox/dcim/filtersets.py:258 netbox/dcim/filtersets.py:369
#: netbox/dcim/filtersets.py:490 netbox/dcim/filtersets.py:1057
@@ -2955,7 +2957,7 @@ msgstr "Lokalizacja (ID)"
#: netbox/dcim/filtersets.py:497 netbox/dcim/filtersets.py:1410
#: netbox/extras/filtersets.py:542
msgid "Location (slug)"
-msgstr "Lokalizacja (ślimak)"
+msgstr "Lokalizacja (identyfikator)"
#: netbox/dcim/filtersets.py:296 netbox/dcim/filtersets.py:381
#: netbox/dcim/filtersets.py:539 netbox/dcim/filtersets.py:678
@@ -2971,15 +2973,15 @@ msgstr "Producent (ID)"
#: netbox/dcim/filtersets.py:979 netbox/dcim/filtersets.py:1312
#: netbox/dcim/filtersets.py:1846
msgid "Manufacturer (slug)"
-msgstr "Producent (ślimak)"
+msgstr "Producent (identyfikator)"
#: netbox/dcim/filtersets.py:393
msgid "Rack type (slug)"
-msgstr "Rodzaj stelaża (ślimak)"
+msgstr "Typ szafy (identyfikator)"
#: netbox/dcim/filtersets.py:397
msgid "Rack type (ID)"
-msgstr "Typ stelaża (ID)"
+msgstr "Typ szafy (numer identyfikacyjny)"
#: netbox/dcim/filtersets.py:411 netbox/dcim/filtersets.py:892
#: netbox/dcim/filtersets.py:994 netbox/dcim/filtersets.py:1850
@@ -2994,12 +2996,12 @@ msgstr "Rola (ID)"
#: netbox/ipam/filtersets.py:499 netbox/ipam/filtersets.py:1009
#: netbox/virtualization/filtersets.py:216
msgid "Role (slug)"
-msgstr "Rola (ślimak)"
+msgstr "Rola (identyfikator)"
#: netbox/dcim/filtersets.py:447 netbox/dcim/filtersets.py:1062
#: netbox/dcim/filtersets.py:1415 netbox/dcim/filtersets.py:2244
msgid "Rack (ID)"
-msgstr "Stojak (ID)"
+msgstr "Szafa (numer identyfikacyjny)"
#: netbox/dcim/filtersets.py:507 netbox/extras/filtersets.py:293
#: netbox/extras/filtersets.py:337 netbox/extras/filtersets.py:359
@@ -3014,7 +3016,7 @@ msgstr "Domyślna platforma (ID)"
#: netbox/dcim/filtersets.py:555
msgid "Default platform (slug)"
-msgstr "Domyślna platforma (slug)"
+msgstr "Domyślna platforma (identyfikator)"
#: netbox/dcim/filtersets.py:558 netbox/dcim/forms/filtersets.py:517
msgid "Has a front image"
@@ -3098,7 +3100,7 @@ msgstr "Szablon konfiguracji (ID)"
#: netbox/dcim/filtersets.py:985
msgid "Device type (slug)"
-msgstr "Typ urządzenia (ślimak)"
+msgstr "Typ urządzenia (identyfikator)"
#: netbox/dcim/filtersets.py:1005
msgid "Parent Device (ID)"
@@ -3111,13 +3113,13 @@ msgstr "Platforma (ID)"
#: netbox/dcim/filtersets.py:1015 netbox/extras/filtersets.py:569
#: netbox/virtualization/filtersets.py:226
msgid "Platform (slug)"
-msgstr "Platforma (ślimak)"
+msgstr "Platforma (identyfikator)"
#: netbox/dcim/filtersets.py:1051 netbox/dcim/filtersets.py:1399
#: netbox/dcim/filtersets.py:1934 netbox/dcim/filtersets.py:2176
#: netbox/dcim/filtersets.py:2235
msgid "Site name (slug)"
-msgstr "Nazwa witryny (slug)"
+msgstr "Nazwa terenu (identyfikator)"
#: netbox/dcim/filtersets.py:1067
msgid "Parent bay (ID)"
@@ -3130,7 +3132,7 @@ msgstr "Klaster maszyn wirtualnych (ID)"
#: netbox/dcim/filtersets.py:1077 netbox/extras/filtersets.py:591
#: netbox/virtualization/filtersets.py:136
msgid "Cluster group (slug)"
-msgstr "Grupa klastra (ślimak)"
+msgstr "Grupa klastra (identyfikator)"
#: netbox/dcim/filtersets.py:1082 netbox/virtualization/filtersets.py:130
msgid "Cluster group (ID)"
@@ -3138,7 +3140,7 @@ msgstr "Grupa klastra (ID)"
#: netbox/dcim/filtersets.py:1088
msgid "Device model (slug)"
-msgstr "Model urządzenia (ślimak)"
+msgstr "Model urządzenia (identyfikator)"
#: netbox/dcim/filtersets.py:1099 netbox/dcim/forms/bulk_edit.py:516
msgid "Is full depth"
@@ -3211,7 +3213,7 @@ msgstr "Urządzenie (ID)"
#: netbox/dcim/filtersets.py:1421
msgid "Rack (name)"
-msgstr "Stojak (nazwa)"
+msgstr "Szafa (nazwa)"
#: netbox/dcim/filtersets.py:1431 netbox/ipam/filtersets.py:606
#: netbox/ipam/filtersets.py:846 netbox/ipam/filtersets.py:1095
@@ -3229,7 +3231,7 @@ msgstr "Rola urządzenia (ID)"
#: netbox/dcim/filtersets.py:1453
msgid "Device role (slug)"
-msgstr "Rola urządzenia (slug)"
+msgstr "Rola urządzenia (identyfikator)"
#: netbox/dcim/filtersets.py:1458
msgid "Virtual Chassis (ID)"
@@ -3264,7 +3266,7 @@ msgstr "Przypisany VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3343,7 +3345,7 @@ msgid "LAG interface (ID)"
msgstr "Interfejs LAG (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Kontekst urządzenia wirtualnego"
@@ -3393,7 +3395,7 @@ msgstr "Najemca (ID)"
#: netbox/dcim/filtersets.py:1945 netbox/extras/filtersets.py:618
#: netbox/tenancy/filtersets.py:252
msgid "Tenant (slug)"
-msgstr "Najemca (ślimak)"
+msgstr "Najemca (identyfikator)"
#: netbox/dcim/filtersets.py:1981 netbox/dcim/forms/filtersets.py:1077
msgid "Unterminated"
@@ -3418,7 +3420,7 @@ msgstr "Tagi"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3465,9 +3467,9 @@ msgstr "Strefa czasowa"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3567,7 +3569,7 @@ msgstr "Jednostka wagowa"
#: netbox/dcim/forms/model_forms.py:217 netbox/dcim/forms/model_forms.py:256
#: netbox/templates/dcim/rack.html:45 netbox/templates/dcim/racktype.html:13
msgid "Rack Type"
-msgstr "Rodzaj stelaża"
+msgstr "Typ szafy"
#: netbox/dcim/forms/bulk_edit.py:298 netbox/dcim/forms/model_forms.py:220
#: netbox/dcim/forms/model_forms.py:297
@@ -3591,9 +3593,9 @@ msgstr "Numeracja"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3677,13 +3679,13 @@ msgstr "Przepływ powietrza"
#: netbox/templates/dcim/rackreservation.html:36
#: netbox/virtualization/forms/model_forms.py:113
msgid "Rack"
-msgstr "Stojak"
+msgstr "Szafa"
#: netbox/dcim/forms/bulk_edit.py:444 netbox/dcim/forms/bulk_edit.py:730
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Sprzęt"
@@ -3791,15 +3793,15 @@ msgstr "Platforma"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3943,7 +3945,7 @@ msgstr "Przydzielony pobór mocy (waty)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Port zasilania"
@@ -4031,14 +4033,14 @@ msgstr "Tryb"
msgid "VLAN group"
msgstr "Grupa VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "Nieoznaczone sieci VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4057,7 +4059,7 @@ msgid "Wireless LANs"
msgstr "Bezprzewodowe sieci LAN"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4066,24 +4068,24 @@ msgid "Addressing"
msgstr "Adresowanie"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Operacja"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Powiązane interfejsy"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4137,11 +4139,11 @@ msgstr "Lokalizacja nie została znaleziona."
#: netbox/dcim/forms/bulk_import.py:185
msgid "The manufacturer of this rack type"
-msgstr "Producent tego typu regału"
+msgstr "Producent tego typu szaf"
#: netbox/dcim/forms/bulk_import.py:196
msgid "The lowest-numbered position in the rack"
-msgstr "Najniższa pozycja w stojaku"
+msgstr "Najniższy numer pozycji w szafie"
#: netbox/dcim/forms/bulk_import.py:201 netbox/dcim/forms/bulk_import.py:268
msgid "Rail-to-rail width (in inches)"
@@ -4153,7 +4155,7 @@ msgstr "Jednostka do wymiarów zewnętrznych"
#: netbox/dcim/forms/bulk_import.py:213 netbox/dcim/forms/bulk_import.py:286
msgid "Unit for rack weights"
-msgstr "Jednostka do obciążników regałowych"
+msgstr "Jednostka masy w szafach"
#: netbox/dcim/forms/bulk_import.py:245
msgid "Name of assigned tenant"
@@ -4174,7 +4176,7 @@ msgstr "Witryna nadrzędna"
#: netbox/dcim/forms/bulk_import.py:319 netbox/dcim/forms/bulk_import.py:1355
msgid "Rack's location (if any)"
-msgstr "Lokalizacja stojaka (jeśli istnieje)"
+msgstr "Lokalizacja szafy (jeśli określona)"
#: netbox/dcim/forms/bulk_import.py:328 netbox/dcim/forms/model_forms.py:311
#: netbox/dcim/tables/racks.py:222
@@ -4270,7 +4272,7 @@ msgstr "Przypisana lokalizacja (jeśli istnieje)"
#: netbox/dcim/forms/bulk_import.py:557
msgid "Assigned rack (if any)"
-msgstr "Przypisany stojak (jeśli istnieje)"
+msgstr "Przypisana szafa (jeśli określona)"
#: netbox/dcim/forms/bulk_import.py:560
msgid "Face"
@@ -4278,7 +4280,7 @@ msgstr "Twarz"
#: netbox/dcim/forms/bulk_import.py:563
msgid "Mounted rack face"
-msgstr "Zamontowana powierzchnia regału"
+msgstr "Powierzchnia montażu w szafie"
#: netbox/dcim/forms/bulk_import.py:570
msgid "Parent device (for child devices)"
@@ -4424,7 +4426,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} nie jest przypisany do urządzenia {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Tylny port"
@@ -4438,7 +4440,7 @@ msgstr "Odpowiedni tylny port"
msgid "Physical medium classification"
msgstr "Klasyfikacja medium fizycznego"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Zainstalowane urządzenie"
@@ -4527,7 +4529,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} Nie znaleziono zakończenia bocznego: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4557,6 +4559,28 @@ msgstr "Rodzaj zasilania (AC/DC)"
msgid "Single or three-phase"
msgstr "Pojedynczy lub trójfazowy"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "Podstawowy IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "Adres IPv4 z maską, np. 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "Podstawowy IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "Adres IPv6 z przedrostkiem, np. 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4642,7 +4666,7 @@ msgstr "Obiekty"
#: netbox/dcim/forms/filtersets.py:380
msgid "Rack type"
-msgstr "Rodzaj stelaża"
+msgstr "Typ szafy"
#: netbox/dcim/forms/filtersets.py:397
msgid "Function"
@@ -4719,7 +4743,7 @@ msgstr "Uprzejmy"
msgid "Mgmt only"
msgstr "Tylko MGMT"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4753,7 +4777,7 @@ msgstr "Moc transmisji (dBm)"
msgid "Cable"
msgstr "Kabel"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Odkryte"
@@ -4774,13 +4798,12 @@ msgstr "Rola szafy"
#: netbox/dcim/forms/model_forms.py:446
#: netbox/utilities/forms/fields/fields.py:47
msgid "Slug"
-msgstr "Ślimak"
+msgstr "Identyfikator"
#: netbox/dcim/forms/model_forms.py:259
msgid "Select a pre-defined rack type, or set physical characteristics below."
msgstr ""
-"Wybierz wstępnie zdefiniowany typ stelaża lub ustaw parametry fizyczne "
-"poniżej."
+"Wybierz predefiniowany typ szafy lub ustaw parametry fizyczne poniżej."
#: netbox/dcim/forms/model_forms.py:265
msgid "Inventory Control"
@@ -4852,8 +4875,8 @@ msgstr "Szablon portu zasilania"
msgid "Rear port template"
msgstr "Szablon tylnego portu"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4877,7 +4900,7 @@ msgstr "Szablon tylnego portu"
msgid "Interface"
msgstr "Interfejs"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4885,14 +4908,14 @@ msgstr "Interfejs"
msgid "Console Port"
msgstr "Port konsoli"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Port serwera konsoli"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4903,8 +4926,8 @@ msgstr "Port serwera konsoli"
msgid "Front Port"
msgstr "Port przedni"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4916,24 +4939,24 @@ msgstr "Port przedni"
msgid "Rear Port"
msgstr "Tylny port"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Port zasilania"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Gniazdo zasilania"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Przypisywanie komponentów"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "InventoryItem można przypisać tylko do pojedynczego komponentu."
@@ -4941,56 +4964,48 @@ msgstr "InventoryItem można przypisać tylko do pojedynczego komponentu."
msgid "LAG interface"
msgstr "Interfejs LAG"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filtruj sieci VLAN dostępne do przypisania według grup."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Urządzenie dziecięce"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
msgstr ""
-"Urządzenia podrzędne muszą być najpierw utworzone i przypisane do witryny i "
-"szafy urządzenia nadrzędnego."
+"Urządzenia podrzędne muszą być najpierw utworzone i przypisane do terenu "
+"i szafy urządzenia nadrzędnego."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Port konsoli"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Port serwera konsoli"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Port przedni"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Gniazdo zasilania"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Przedmiot zapasów"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Rola pozycji zapasów"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "Podstawowy IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "Podstawowy IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -4998,7 +5013,7 @@ msgid ""
"Alphanumeric ranges are supported. (Must match the number of objects being "
"created.)"
msgstr ""
-"Obsługiwane są zakresy alfanumeryczne. (Musi odpowiadać liczbie tworzonych "
+"Obsługiwane są zakresy alfanumeryczne. (Muszą odpowiadać liczbie tworzonych "
"obiektów.)"
#: netbox/dcim/forms/object_create.py:68
@@ -5019,7 +5034,7 @@ msgstr "Tylne porty"
#: netbox/dcim/forms/object_create.py:272
msgid "Select one rear port assignment for each front port being created."
msgstr ""
-"Wybierz jedno przypisanie portu tylnego dla każdego utworzonego portu "
+"Wybierz jedno przypisanie portu tylnego dla każdego tworzonego portu "
"przedniego."
#: netbox/dcim/forms/object_create.py:164
@@ -5046,10 +5061,10 @@ msgid ""
"The number of front ports to be created ({frontport_count}) must match the "
"selected number of rear port positions ({rearport_count})."
msgstr ""
-"Liczba portów frontowych do utworzenia ({frontport_count}) musi odpowiadać "
+"Liczba portów przednich do utworzenia ({frontport_count}) musi odpowiadać "
"wybranej liczbie pozycji tylnych portów ({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -5890,8 +5905,7 @@ msgstr "jest pełna głębokość"
#: netbox/dcim/models/devices.py:117
msgid "Device consumes both front and rear rack faces."
-msgstr ""
-"Urządzenie zużywa zarówno przednią, jak i tylną powierzchnię bagażnika."
+msgstr "Urządzenie zajmuje zarówno przednią, jak i tylną powierzchnię szafy."
#: netbox/dcim/models/devices.py:123
msgid "parent/child status"
@@ -5921,7 +5935,7 @@ msgstr "typy urządzeń"
#: netbox/dcim/models/devices.py:290
msgid "U height must be in increments of 0.5 rack units."
-msgstr "Wysokość U musi być w odstępach co 0,5 jednostki regału."
+msgstr "Wysokość U musi być w odstępach co 0,5 jednostki szafy."
#: netbox/dcim/models/devices.py:307
#, python-brace-format
@@ -5929,7 +5943,7 @@ msgid ""
"Device {device} in rack {rack} does not have sufficient space to accommodate"
" a height of {height}U"
msgstr ""
-"Urządzenie {device} w stojaku {rack} nie ma wystarczającej ilości miejsca, "
+"Urządzenie {device} w szafie {rack} nie ma wystarczającej ilości miejsca, "
"aby pomieścić wysokość {height}U"
#: netbox/dcim/models/devices.py:322
@@ -5938,9 +5952,9 @@ msgid ""
"Unable to set 0U height: Found {racked_instance_count} "
"instances already mounted within racks."
msgstr ""
-"Nie można ustawić wysokości 0U: Znaleziono {racked_instance_count} instancje już zamontowane w "
-"stojakach."
+"Nie można ustawić wysokości 0U: znaleziono {racked_instance_count} instancji już zamontowanych "
+"w szafach."
#: netbox/dcim/models/devices.py:331
msgid ""
@@ -6004,7 +6018,7 @@ msgstr "pozycja (U)"
#: netbox/dcim/models/devices.py:650
msgid "rack face"
-msgstr "powierzchnia regału"
+msgstr "powierzchnia szafy"
#: netbox/dcim/models/devices.py:670 netbox/dcim/models/devices.py:1408
#: netbox/virtualization/models/virtualmachines.py:100
@@ -6064,7 +6078,7 @@ msgstr "urządzenia"
#: netbox/dcim/models/devices.py:835
#, python-brace-format
msgid "Rack {rack} does not belong to site {site}."
-msgstr "Stojak {rack} nie należy do strony {site}."
+msgstr "Szafa {rack} nie należy do terenu {site}."
#: netbox/dcim/models/devices.py:840
#, python-brace-format
@@ -6074,39 +6088,39 @@ msgstr "Lokalizacja {location} nie należy do strony {site}."
#: netbox/dcim/models/devices.py:846
#, python-brace-format
msgid "Rack {rack} does not belong to location {location}."
-msgstr "Stojak {rack} Nie należy do lokalizacji {location}."
+msgstr "Szafa {rack} nie należy do lokalizacji {location}."
#: netbox/dcim/models/devices.py:853
msgid "Cannot select a rack face without assigning a rack."
-msgstr "Nie można wybrać powierzchni stelaża bez przypisania stelaża."
+msgstr "Nie można wybrać powierzchni szafy bez przypisania szafy."
#: netbox/dcim/models/devices.py:857
msgid "Cannot select a rack position without assigning a rack."
-msgstr "Nie można wybrać pozycji stelaża bez przypisania stelaża."
+msgstr "Nie można wybrać pozycji w szafie bez przypisania szafy."
#: netbox/dcim/models/devices.py:863
msgid "Position must be in increments of 0.5 rack units."
-msgstr "Pozycja musi być w odstępach co 0,5 jednostek regałowych."
+msgstr "Pozycja musi być w odstępach co 0,5 jednostek regałowych."
#: netbox/dcim/models/devices.py:867
msgid "Must specify rack face when defining rack position."
msgstr ""
-"Należy określić powierzchnię stelaża podczas definiowania położenia stelaża."
+"Należy określić powierzchnię szafy podczas definiowania pozycji w szafie."
#: netbox/dcim/models/devices.py:875
#, python-brace-format
msgid ""
"A 0U device type ({device_type}) cannot be assigned to a rack position."
msgstr ""
-"Typ urządzenia 0U ({device_type}) nie można przypisać do pozycji stojaka."
+"Typ urządzenia 0U ({device_type}) nie może być przypisany do pozycji szafy."
#: netbox/dcim/models/devices.py:886
msgid ""
"Child device types cannot be assigned to a rack face. This is an attribute "
"of the parent device."
msgstr ""
-"Typy urządzeń podrzędnych nie mogą być przypisane do powierzchni stelaża. "
-"Jest to atrybut urządzenia nadrzędnego."
+"Typy urządzeń podrzędnych nie mogą być przypisane do powierzchni szafy. Jest"
+" to atrybut urządzenia nadrzędnego."
#: netbox/dcim/models/devices.py:893
msgid ""
@@ -6305,8 +6319,8 @@ msgid ""
"Rack {rack} ({rack_site}) and power panel {powerpanel} ({powerpanel_site}) "
"are in different sites."
msgstr ""
-"Stojak {rack} ({rack_site}) i panel zasilania {powerpanel} "
-"({powerpanel_site}) znajdują się w różnych miejscach."
+"Szafa {rack} ({rack_site}) i panel zasilania {powerpanel} "
+"({powerpanel_site}) znajdują się na różnych terenach."
#: netbox/dcim/models/power.py:190
msgid "Voltage cannot be negative for AC supply"
@@ -6322,7 +6336,7 @@ msgstr "Szerokość szyny do szyny"
#: netbox/dcim/models/racks.py:56
msgid "Height in rack units"
-msgstr "Wysokość w jednostkach regałowych"
+msgstr "Wysokość w jednostkach szafy"
#: netbox/dcim/models/racks.py:60
msgid "starting unit"
@@ -6330,7 +6344,7 @@ msgstr "jednostka startowa"
#: netbox/dcim/models/racks.py:62
msgid "Starting unit for rack"
-msgstr "Jednostka startowa do stojaka"
+msgstr "Jednostka początkowa szafy"
#: netbox/dcim/models/racks.py:66
msgid "descending units"
@@ -6346,7 +6360,7 @@ msgstr "szerokość zewnętrzna"
#: netbox/dcim/models/racks.py:75
msgid "Outer dimension of rack (width)"
-msgstr "Wymiar zewnętrzny stelaża (szerokość)"
+msgstr "Wymiar zewnętrzny szafy (szerokość)"
#: netbox/dcim/models/racks.py:78
msgid "outer depth"
@@ -6354,7 +6368,7 @@ msgstr "głębokość zewnętrzna"
#: netbox/dcim/models/racks.py:81
msgid "Outer dimension of rack (depth)"
-msgstr "Wymiar zewnętrzny stelaża (głębokość)"
+msgstr "Wymiar zewnętrzny szafy (głębokość)"
#: netbox/dcim/models/racks.py:84
msgid "outer unit"
@@ -6369,8 +6383,8 @@ msgid ""
"Maximum depth of a mounted device, in millimeters. For four-post racks, this"
" is the distance between the front and rear rails."
msgstr ""
-"Maksymalna głębokość zamontowanego urządzenia, w milimetrach. W przypadku "
-"stojaków czterosłupkowych jest to odległość między przednią i tylną szyną."
+"Maksymalna głębokość zamontowanego urządzenia w milimetrach. W przypadku "
+"stojaków czterosłupkowych jest to odległość między przednią i tylną szyną."
#: netbox/dcim/models/racks.py:102
msgid "max weight"
@@ -6386,11 +6400,11 @@ msgstr "współczynnik kształtu"
#: netbox/dcim/models/racks.py:162
msgid "rack type"
-msgstr "typ stelaża"
+msgstr "typ szafy"
#: netbox/dcim/models/racks.py:163
msgid "rack types"
-msgstr "typy regałów"
+msgstr "typy szaf"
#: netbox/dcim/models/racks.py:180 netbox/dcim/models/racks.py:379
msgid "Must specify a unit when setting an outer width/depth"
@@ -6404,11 +6418,11 @@ msgstr "Należy określić jednostkę podczas ustawiania maksymalnej wagi"
#: netbox/dcim/models/racks.py:230
msgid "rack role"
-msgstr "rola stelaża"
+msgstr "rola szafy"
#: netbox/dcim/models/racks.py:231
msgid "rack roles"
-msgstr "role w szafie"
+msgstr "role szafy"
#: netbox/dcim/models/racks.py:274
msgid "facility ID"
@@ -6427,15 +6441,15 @@ msgstr "Funkcjonalna rola"
#: netbox/dcim/models/racks.py:321
msgid "A unique tag used to identify this rack"
-msgstr "Unikalny znacznik używany do identyfikacji tego stelaża"
+msgstr "Unikalny tag używany do identyfikacji tej szafy"
#: netbox/dcim/models/racks.py:359
msgid "rack"
-msgstr "regał"
+msgstr "szafa"
#: netbox/dcim/models/racks.py:360
msgid "racks"
-msgstr "stojaki"
+msgstr "szafy"
#: netbox/dcim/models/racks.py:375
#, python-brace-format
@@ -6448,8 +6462,8 @@ msgid ""
"Rack must be at least {min_height}U tall to house currently installed "
"devices."
msgstr ""
-"Stojak musi być co najmniej {min_height}Wysokość do przechowywania aktualnie"
-" zainstalowanych urządzeń."
+"Szafa musi być mieć najmniej {min_height}U wysokości aby pomieścić aktualnie"
+" zainstalowane urządzeń."
#: netbox/dcim/models/racks.py:400
#, python-brace-format
@@ -6457,8 +6471,8 @@ msgid ""
"Rack unit numbering must begin at {position} or less to house currently "
"installed devices."
msgstr ""
-"Numeracja jednostek regałowych musi rozpoczynać się od {position} lub mniej,"
-" aby pomieścić aktualnie zainstalowane urządzenia."
+"Numeracja jednostek szafy musi rozpoczynać się od {position} lub mniej, aby "
+"pomieścić aktualnie zainstalowane urządzenia."
#: netbox/dcim/models/racks.py:408
#, python-brace-format
@@ -6471,16 +6485,16 @@ msgstr "jednostki"
#: netbox/dcim/models/racks.py:696
msgid "rack reservation"
-msgstr "rezerwacja stojaków"
+msgstr "rezerwacja szafy"
#: netbox/dcim/models/racks.py:697
msgid "rack reservations"
-msgstr "rezerwacje regałów"
+msgstr "rezerwacje szafy"
#: netbox/dcim/models/racks.py:714
#, python-brace-format
msgid "Invalid unit(s) for {height}U rack: {unit_list}"
-msgstr "Nieprawidłowa jednostka (y) dla {height}Stojak U: {unit_list}"
+msgstr "Nieprawidłowa jednostka (jednostki) dla szafy {height}U: {unit_list}"
#: netbox/dcim/models/racks.py:727
#, python-brace-format
@@ -6493,7 +6507,7 @@ msgstr "Region najwyższego poziomu o tej nazwie już istnieje."
#: netbox/dcim/models/sites.py:59
msgid "A top-level region with this slug already exists."
-msgstr "Region najwyższego poziomu z tym ślimakiem już istnieje."
+msgstr "Region najwyższego poziomu z tym identyfikatorem już istnieje."
#: netbox/dcim/models/sites.py:62
msgid "region"
@@ -6509,7 +6523,7 @@ msgstr "Grupa witryn najwyższego poziomu o tej nazwie już istnieje."
#: netbox/dcim/models/sites.py:112
msgid "A top-level site group with this slug already exists."
-msgstr "Grupa witryn najwyższego poziomu z tym ślimakiem już istnieje."
+msgstr "Grupa terenów najwyższego poziomu z tym identyfikatorem już istnieje."
#: netbox/dcim/models/sites.py:115
msgid "site group"
@@ -6561,7 +6575,7 @@ msgstr "Lokalizacja o tej nazwie istnieje już w określonej witrynie."
#: netbox/dcim/models/sites.py:319
msgid "A location with this slug already exists within the specified site."
-msgstr "Lokalizacja z tym ślimakiem istnieje już w określonej witrynie."
+msgstr "Lokalizacja z tym identyfikatorem już istnieje na określonym terenie."
#: netbox/dcim/models/sites.py:322
msgid "location"
@@ -6604,11 +6618,11 @@ msgstr "Lokalizacja B"
#: netbox/dcim/tables/cables.py:90
msgid "Rack A"
-msgstr "Stojak A"
+msgstr "Szafa A"
#: netbox/dcim/tables/cables.py:96
msgid "Rack B"
-msgstr "Stojak B"
+msgstr "Szafa B"
#: netbox/dcim/tables/cables.py:102
msgid "Site A"
@@ -6659,7 +6673,7 @@ msgstr "Szablon konfiguracji"
msgid "Site Group"
msgstr "Grupa witryn"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6668,12 +6682,12 @@ msgstr "Grupa witryn"
msgid "IP Address"
msgstr "Adres IP"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "Adres IPv4"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "Adres IPv6"
@@ -6711,7 +6725,7 @@ msgstr "Porty zasilania"
msgid "Power outlets"
msgstr "Gniazdka elektryczne"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6818,28 +6832,28 @@ msgstr "Tylko zarządzanie"
msgid "VDCs"
msgstr "VDC"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Zainstalowany moduł"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Moduł szeregowy"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Etykietka zasobów modułu"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Status modułu"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Komponent"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Przedmioty"
@@ -6978,7 +6992,7 @@ msgstr "Dostępna moc (VA)"
#: netbox/netbox/navigation/menu.py:43 netbox/netbox/navigation/menu.py:47
#: netbox/netbox/navigation/menu.py:49
msgid "Racks"
-msgstr "Regały"
+msgstr "Szafy"
#: netbox/dcim/tables/racks.py:63 netbox/dcim/tables/racks.py:142
#: netbox/templates/dcim/device.html:318
@@ -7028,7 +7042,7 @@ msgstr "Rezerwacje"
#: netbox/dcim/views.py:759 netbox/templates/dcim/location.html:90
#: netbox/templates/dcim/site.html:140
msgid "Non-Racked Devices"
-msgstr "Urządzenia bez stojaków"
+msgstr "Urządzenia poza szafami"
#: netbox/dcim/views.py:2088 netbox/extras/forms/model_forms.py:577
#: netbox/templates/extras/configcontext.html:10
@@ -7250,7 +7264,7 @@ msgstr "30 dni"
#: netbox/templates/generic/object_edit.html:80
#: netbox/templates/ipam/inc/ipaddress_edit_header.html:7
msgid "Create"
-msgstr "Stwórz"
+msgstr "Utwórz"
#: netbox/extras/choices.py:227
msgid "Update"
@@ -7412,7 +7426,7 @@ msgid ""
"Display a set of NetBox models and the number of objects created for each "
"type."
msgstr ""
-"Wyświetla zestaw modeli NetBox i liczbę obiektów utworzonych dla każdego "
+"Wyświetla zestaw modeli NetBox i liczbę obiektów utworzonych dla każdego "
"typu."
#: netbox/extras/dashboard/widgets.py:170
@@ -7505,7 +7519,7 @@ msgstr "Typ klastra"
#: netbox/extras/filtersets.py:580 netbox/virtualization/filtersets.py:95
#: netbox/virtualization/filtersets.py:147
msgid "Cluster type (slug)"
-msgstr "Typ klastra (ślimak)"
+msgstr "Typ klastra (identyfikator)"
#: netbox/extras/filtersets.py:601 netbox/tenancy/forms/forms.py:16
#: netbox/tenancy/forms/forms.py:39
@@ -7515,7 +7529,7 @@ msgstr "Grupa najemców"
#: netbox/extras/filtersets.py:607 netbox/tenancy/filtersets.py:189
#: netbox/tenancy/filtersets.py:209
msgid "Tenant group (slug)"
-msgstr "Grupa najemców (ślimak)"
+msgstr "Grupa najemców (identyfikator)"
#: netbox/extras/filtersets.py:623 netbox/extras/forms/model_forms.py:495
#: netbox/templates/extras/tag.html:11
@@ -7524,7 +7538,7 @@ msgstr "Etykietka"
#: netbox/extras/filtersets.py:629
msgid "Tag (slug)"
-msgstr "Tag (ślimak)"
+msgstr "Tag (identyfikator)"
#: netbox/extras/filtersets.py:689 netbox/extras/forms/filtersets.py:429
msgid "Has local config context data"
@@ -9250,7 +9264,7 @@ msgstr "RIR (ID)"
#: netbox/ipam/filtersets.py:165 netbox/ipam/filtersets.py:204
#: netbox/ipam/filtersets.py:227
msgid "RIR (slug)"
-msgstr "RIR (ślimak)"
+msgstr "RIR (identyfikator)"
#: netbox/ipam/filtersets.py:285
msgid "Within prefix"
@@ -9933,7 +9947,7 @@ msgstr "agregaty"
#: netbox/ipam/models/ip.py:132
msgid "Cannot create aggregate with /0 mask."
-msgstr "Nie można utworzyć agregatu z maską /0."
+msgstr "Nie można utworzyć agregatu z maską /0."
#: netbox/ipam/models/ip.py:144
#, python-brace-format
@@ -9996,7 +10010,7 @@ msgstr "przedrostki"
#: netbox/ipam/models/ip.py:317
msgid "Cannot create prefix with /0 mask."
-msgstr "Nie można utworzyć prefiksu z maską /0."
+msgstr "Nie można utworzyć prefiksu z maską /0."
#: netbox/ipam/models/ip.py:324 netbox/ipam/models/ip.py:874
#, python-brace-format
@@ -10097,7 +10111,7 @@ msgstr "Adresy IP"
#: netbox/ipam/models/ip.py:845
msgid "Cannot create IP address with /0 mask."
-msgstr "Nie można utworzyć adresu IP z maską /0."
+msgstr "Nie można utworzyć adresu IP z maską /0."
#: netbox/ipam/models/ip.py:851
#, python-brace-format
@@ -10438,7 +10452,7 @@ msgstr "Zakresy muszą być określone w formularzu (dolny, górny)."
msgid "Range boundaries must be defined as integers."
msgstr "Granice zakresu muszą być zdefiniowane jako liczby całkowite."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} musi zaimplementować get_view_name ()"
@@ -10592,19 +10606,19 @@ msgstr "Preferuj adresy IPv4 niż IPv6"
#: netbox/netbox/config/parameters.py:84
msgid "Rack unit height"
-msgstr "Wysokość jednostki regału"
+msgstr "Wysokość jednostki szafy"
#: netbox/netbox/config/parameters.py:86
msgid "Default unit height for rendered rack elevations"
-msgstr "Domyślna wysokość jednostki dla renderowanych elewacji stelaża"
+msgstr "Domyślna wysokość jednostki dla renderowanych elewacji szafy"
#: netbox/netbox/config/parameters.py:91
msgid "Rack unit width"
-msgstr "Szerokość jednostki stelażowej"
+msgstr "Szerokość jednostki szafy"
#: netbox/netbox/config/parameters.py:93
msgid "Default unit width for rendered rack elevations"
-msgstr "Domyślna szerokość jednostki dla renderowanych elewacji stelaża"
+msgstr "Domyślna szerokość jednostki dla renderowanych elewacji szafy"
#: netbox/netbox/config/parameters.py:100
msgid "Powerfeed voltage"
@@ -10756,8 +10770,8 @@ msgid ""
"Tag slugs separated by commas, encased with double quotes (e.g. "
"\"tag1,tag2,tag3\")"
msgstr ""
-"Oznacz ślimaki oddzielone przecinkami, otoczone podwójnymi cudzysłowami (np."
-" „tag1, tag2, tag3\")"
+"Identyfikatory tagów oddzielone przecinkami, otoczone podwójnymi "
+"cudzysłowami (np. \"tag1,tag2,tag3\")"
#: netbox/netbox/forms/base.py:120
msgid "Add tags"
@@ -10792,31 +10806,31 @@ msgstr "Pole niestandardowe '{name}„musi mieć unikalną wartość."
msgid "Missing required custom field '{name}'."
msgstr "Brakujące wymagane pole niestandardowe '{name}”."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Zdalne źródło danych"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "ścieżka danych"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Ścieżka do pliku zdalnego (względem katalogu głównego źródła danych)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "włączona automatyczna synchronizacja"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr "Włącz automatyczną synchronizację danych po aktualizacji pliku danych"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "data zsynchronizowana"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} musi wdrożyć metodę sync_data ()."
@@ -10848,7 +10862,7 @@ msgstr "Zadania kontaktowe"
#: netbox/netbox/navigation/menu.py:50
msgid "Rack Roles"
-msgstr "Role w szafie"
+msgstr "Role szafy"
#: netbox/netbox/navigation/menu.py:54
msgid "Elevations"
@@ -10856,7 +10870,7 @@ msgstr "Elewacje"
#: netbox/netbox/navigation/menu.py:60 netbox/netbox/navigation/menu.py:62
msgid "Rack Types"
-msgstr "Rodzaje regałów"
+msgstr "Rodzaje szaf"
#: netbox/netbox/navigation/menu.py:76
msgid "Modules"
@@ -11965,7 +11979,7 @@ msgstr "Pliki"
#: netbox/templates/core/inc/config_data.html:7
msgid "Rack elevations"
-msgstr "Elewacje szaf rackowych"
+msgstr "Elewacje szaf"
#: netbox/templates/core/inc/config_data.html:10
msgid "Default unit height"
@@ -12019,7 +12033,7 @@ msgstr "Praca"
#: netbox/templates/core/job.html:58
#: netbox/templates/extras/journalentry.html:26
msgid "Created By"
-msgstr "Stworzony przez"
+msgstr "Utworzony przez"
#: netbox/templates/core/job.html:66
msgid "Scheduling"
@@ -12378,11 +12392,11 @@ msgstr "Nie jest połączony"
#: netbox/templates/dcim/device.html:34
msgid "Highlight device in rack"
-msgstr "Podświetl urządzenie w stojaku"
+msgstr "Podświetl urządzenie w szafie"
#: netbox/templates/dcim/device.html:55
msgid "Not racked"
-msgstr "Nie zgarnięty"
+msgstr "Poza szafą"
#: netbox/templates/dcim/device.html:62 netbox/templates/dcim/site.html:94
msgid "GPS Coordinates"
@@ -12557,9 +12571,9 @@ msgid "Parent Bay"
msgstr "Zatoka Parent"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
-msgstr "Regeneruj ślimak"
+msgstr "Regeneruj identyfikator"
#: netbox/templates/dcim/device_edit.html:49
#: netbox/templates/generic/bulk_remove.html:21
@@ -12731,7 +12745,7 @@ msgstr "Jednostki malejące"
#: netbox/templates/dcim/inc/rack_elevation.html:3
msgid "Rack elevation"
-msgstr "Elewacja stojaka"
+msgstr "Elewacja szafy"
#: netbox/templates/dcim/interface.html:17
msgid "Add Child Interface"
@@ -12892,7 +12906,7 @@ msgstr "Wykorzystanie przestrzeni"
#: netbox/templates/dcim/rack.html:84 netbox/templates/dcim/racktype.html:44
msgid "Rack Weight"
-msgstr "Waga stojaka"
+msgstr "Waga szafy"
#: netbox/templates/dcim/rack.html:94 netbox/templates/dcim/racktype.html:54
msgid "Maximum Weight"
@@ -12902,17 +12916,17 @@ msgstr "Maksymalna waga"
msgid "Total Weight"
msgstr "Całkowita waga"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Obrazy i etykiety"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Tylko obrazy"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Tylko etykiety"
@@ -12927,7 +12941,7 @@ msgstr "Wyświetl listę"
#: netbox/templates/dcim/rack_elevation_list.html:14
msgid "Select rack view"
-msgstr "Wybierz widok stelaża"
+msgstr "Wybierz widok szafy"
#: netbox/templates/dcim/rack_elevation_list.html:25
msgid "Sort By"
@@ -12935,7 +12949,7 @@ msgstr "Sortuj wg"
#: netbox/templates/dcim/rack_elevation_list.html:74
msgid "No Racks Found"
-msgstr "Nie znaleziono regałów"
+msgstr "Nie znaleziono szaf"
#: netbox/templates/dcim/rack_list.html:8
msgid "View Elevations"
@@ -12947,7 +12961,7 @@ msgstr "Szczegóły rezerwacji"
#: netbox/templates/dcim/rackrole.html:10
msgid "Add Rack"
-msgstr "Dodaj stelaż"
+msgstr "Dodaj szafę"
#: netbox/templates/dcim/rearport.html:50
msgid "Positions"
@@ -13037,7 +13051,7 @@ msgstr "Edycja wirtualnej obudowy %(name)s"
#: netbox/templates/dcim/virtualchassis_edit.html:53
msgid "Rack/Unit"
-msgstr "Stojak/Jednostka"
+msgstr "Szafa/jednostka"
#: netbox/templates/dcim/virtualchassis_remove_member.html:5
msgid "Remove Virtual Chassis Member"
@@ -13425,8 +13439,8 @@ msgid ""
"Get started by creating a script from "
"an uploaded file or data source."
msgstr ""
-"Zacznij od tworzenie skryptu z "
-"przesłanego pliku lub źródła danych."
+"Zacznij od utworzenia skryptu "
+"z przesłanego pliku lub źródła danych."
#: netbox/templates/extras/script_result.html:35
#: netbox/templates/generic/object_list.html:50
@@ -13660,11 +13674,11 @@ msgstr "Wyświetl dokumentację modelu"
#: netbox/templates/generic/object_edit.html:36
msgid "Help"
-msgstr "Pomocy"
+msgstr "Pomoc"
#: netbox/templates/generic/object_edit.html:83
msgid "Create & Add Another"
-msgstr "Utwórz i dodaj kolejny"
+msgstr "Utwórz i dodaj kolejny"
#: netbox/templates/generic/object_list.html:57
msgid "Filters"
@@ -14422,7 +14436,7 @@ msgstr "Nadrzędna grupa kontaktów (ID)"
#: netbox/tenancy/filtersets.py:35
msgid "Parent contact group (slug)"
-msgstr "Rodzicielska grupa kontaktowa (ślimak)"
+msgstr "Nadrzędna grupa kontaktów (identyfikator)"
#: netbox/tenancy/filtersets.py:41 netbox/tenancy/filtersets.py:68
#: netbox/tenancy/filtersets.py:111
@@ -14432,7 +14446,7 @@ msgstr "Grupa kontaktowa (ID)"
#: netbox/tenancy/filtersets.py:48 netbox/tenancy/filtersets.py:75
#: netbox/tenancy/filtersets.py:118
msgid "Contact group (slug)"
-msgstr "Grupa kontaktowa (ślimak)"
+msgstr "Grupa kontaktów (identyfikator)"
#: netbox/tenancy/filtersets.py:105
msgid "Contact (ID)"
@@ -14444,7 +14458,7 @@ msgstr "Rola kontaktowa (ID)"
#: netbox/tenancy/filtersets.py:128
msgid "Contact role (slug)"
-msgstr "Rola kontaktowa (slug)"
+msgstr "Rola kontaktu (identyfikator)"
#: netbox/tenancy/filtersets.py:159
msgid "Contact group"
@@ -14456,7 +14470,7 @@ msgstr "Grupa nadrzędnych najemców (ID)"
#: netbox/tenancy/filtersets.py:176
msgid "Parent tenant group (slug)"
-msgstr "Rodzicielska grupa najemców (ślimak)"
+msgstr "Nadrzędna grupa najemców (identyfikator)"
#: netbox/tenancy/filtersets.py:182 netbox/tenancy/filtersets.py:202
msgid "Tenant group (ID)"
@@ -14468,7 +14482,7 @@ msgstr "Grupa najemców (ID)"
#: netbox/tenancy/filtersets.py:242
msgid "Tenant Group (slug)"
-msgstr "Grupa najemców (ślimak)"
+msgstr "Grupa najemców (identyfikator)"
#: netbox/tenancy/forms/bulk_edit.py:66
msgid "Desciption"
@@ -14545,7 +14559,7 @@ msgstr "Nazwa najemcy musi być niepowtarzalna dla każdej grupy."
#: netbox/tenancy/models/tenants.py:80
msgid "Tenant slug must be unique per group."
-msgstr "Ślimak najemcy musi być unikalny dla każdej grupy."
+msgstr "Identyfikator najemcy musi być unikalny dla każdej grupy."
#: netbox/tenancy/models/tenants.py:88
msgid "tenant"
@@ -14642,8 +14656,8 @@ msgid ""
"accessible once the token has been created."
msgstr ""
"Klucze muszą mieć co najmniej 40 znaków długości. Pamiętaj, aby "
-"nagrać swój klucz przed przesłaniem tego formularza, ponieważ może "
-"nie być już dostępny po utworzeniu tokena."
+"zapisać swój klucz przed przesłaniem tego formularza, ponieważ może"
+" nie być już dostępny po utworzeniu tokena."
#: netbox/users/forms/model_forms.py:127
msgid ""
@@ -14993,8 +15007,8 @@ msgid ""
"Specify a numeric range to create multiple IPs. Example: "
"192.0.2.[1,5,100-254]/24 "
msgstr ""
-"Określ zakres numeryczny, aby utworzyć wiele adresów IP. Przykład: "
-"192.0.2. [1,5,100-254] /24 "
+"Określ zakres numeryczny, aby utworzyć wiele adresów IP. Przykład: "
+"192.0.2.[1,5,100-254]/24 "
#: netbox/utilities/forms/fields/fields.py:31
#, python-brace-format
@@ -15201,15 +15215,15 @@ msgstr "Anuluj subskrypcję"
msgid "Subscribe"
msgstr "Subskrybuj"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Kopiuj do schowka"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "To pole jest wymagane"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Ustaw Null"
@@ -15280,7 +15294,7 @@ msgstr "Grupa nadrzędna (ID)"
#: netbox/virtualization/filtersets.py:85
msgid "Parent group (slug)"
-msgstr "Grupa nadrzędna (ślimak)"
+msgstr "Grupa nadrzędna (identyfikator)"
#: netbox/virtualization/filtersets.py:89
#: netbox/virtualization/filtersets.py:141
@@ -15629,7 +15643,7 @@ msgstr "Polityka IPsec (nazwa)"
#: netbox/vpn/filtersets.py:359
msgid "L2VPN (slug)"
-msgstr "L2VPN (ślimak)"
+msgstr "L2VPN (identyfikator)"
#: netbox/vpn/filtersets.py:423
msgid "VM Interface (ID)"
diff --git a/netbox/translations/pt/LC_MESSAGES/django.mo b/netbox/translations/pt/LC_MESSAGES/django.mo
index b961d51f0..a7bb4e1d9 100644
Binary files a/netbox/translations/pt/LC_MESSAGES/django.mo and b/netbox/translations/pt/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/pt/LC_MESSAGES/django.po b/netbox/translations/pt/LC_MESSAGES/django.po
index 62f9cb04e..4b62823c1 100644
--- a/netbox/translations/pt/LC_MESSAGES/django.po
+++ b/netbox/translations/pt/LC_MESSAGES/django.po
@@ -6,17 +6,17 @@
# Translators:
# Renato Almeida de Oliveira, 2023
# Fer22f , 2024
-# Jeremy Stretch, 2024
# Fabricio Maciel, 2024
+# Jeremy Stretch, 2024
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
-"Last-Translator: Fabricio Maciel, 2024\n"
+"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Portuguese (https://app.transifex.com/netbox-community/teams/178115/pt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -91,8 +91,8 @@ msgstr "Sua senha foi alterada com sucesso."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -105,7 +105,7 @@ msgstr "Provisionamento"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -116,8 +116,8 @@ msgid "Active"
msgstr "Ativo"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Offline"
@@ -130,7 +130,7 @@ msgstr "Em Desprovisionamento"
msgid "Decommissioned"
msgstr "Descomissionado"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Primário"
@@ -336,7 +336,7 @@ msgstr "Terminação A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -574,8 +574,8 @@ msgstr "ID do serviço"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -612,7 +612,7 @@ msgstr "Cor"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -669,8 +669,8 @@ msgstr "Conta do provedor"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -819,7 +819,7 @@ msgstr "Parâmetros do serviço"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1402,11 +1402,11 @@ msgstr "redes dos provedores"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1544,7 +1544,7 @@ msgstr "Taxa Garantida"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1623,7 +1623,7 @@ msgstr "Concluído"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Falhou"
@@ -1951,7 +1951,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr "Elevações de Rack"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2529,7 +2529,7 @@ msgid "Staging"
msgstr "Em Preparação"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Em Descomissionamento"
@@ -2593,7 +2593,7 @@ msgstr "Obsoleto"
msgid "Millimeters"
msgstr "Milímetros"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Polegadas"
@@ -2615,9 +2615,9 @@ msgstr "Trás para frente"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2647,15 +2647,15 @@ msgstr "Pai"
msgid "Child"
msgstr "Filho"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Frente"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2683,7 +2683,7 @@ msgid "Side to rear"
msgstr "Lado para trás"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Passivo"
@@ -2691,15 +2691,15 @@ msgstr "Passivo"
msgid "Mixed"
msgstr "Misto"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (sem trava)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (twist-lock)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "California Standard"
@@ -2707,42 +2707,42 @@ msgstr "California Standard"
msgid "International/ITA"
msgstr "Internacional/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Proprietário"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Outros"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/Internacional"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Físico"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Virtual"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Wireless"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Interfaces virtuais"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2752,27 +2752,27 @@ msgstr "Interfaces virtuais"
msgid "Bridge"
msgstr "Bridge"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Link Aggregation (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (fixa)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modular)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (backplane)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Celular"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2780,129 +2780,130 @@ msgstr "Celular"
msgid "Serial"
msgstr "Serial"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Coaxial"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Empilhamento"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Half"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Full"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Automático"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Acesso"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Tagueada"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Tagueada (Todos)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "Padrão IEEE"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "24V passivo (2 pares)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "24V passivo (4 pares)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "48V passivo (2 pares)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "48V passivo (4 pares)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Cabo Metálico"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Fibra Óptica"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Fibra"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Conectado"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Quilômetros"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Metros"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Centímetros"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Milhas"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Pés"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Quilogramas"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Gramas"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Libras"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Onças"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Redundante"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Monofásico"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Trifásico"
@@ -3272,7 +3273,7 @@ msgstr "VLAN ID Designada "
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3351,7 +3352,7 @@ msgid "LAG interface (ID)"
msgstr "Interface LAG (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Contexto de Dispositivo Virtual"
@@ -3426,7 +3427,7 @@ msgstr "Etiquetas"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3473,9 +3474,9 @@ msgstr "Fuso horário"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3599,9 +3600,9 @@ msgstr "Numeração"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3691,7 +3692,7 @@ msgstr "Rack"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Hardware"
@@ -3799,15 +3800,15 @@ msgstr "Plataforma"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3951,7 +3952,7 @@ msgstr "Consumo de energia alocado (Watts)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Porta de alimentação"
@@ -4039,14 +4040,14 @@ msgstr "Modo"
msgid "VLAN group"
msgstr "Grupo de VLANs"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "VLAN Não Tagueada"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4065,7 +4066,7 @@ msgid "Wireless LANs"
msgstr "Redes Wireless"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4074,24 +4075,24 @@ msgid "Addressing"
msgstr "Endereçamento"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Operação"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Interfaces Relacionadas"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4434,7 +4435,7 @@ msgstr ""
"{device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Porta traseira"
@@ -4448,7 +4449,7 @@ msgstr "Porta traseira correspondente"
msgid "Physical medium classification"
msgstr "Tipo de conexão do meio físico"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Dispositivo instalado"
@@ -4537,7 +4538,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr " Terminação {side_upper} não encontrada: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4567,6 +4568,28 @@ msgstr "Tipo de alimentação (AC/DC)"
msgid "Single or three-phase"
msgstr "Monofásico ou trifásico"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "IPv4 Primário"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "Endereço IPv4 com máscara, por exemplo, 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "IPv6 Primário"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "Endereço IPv6 com tamanho de prefixo, por exemplo, 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4730,7 +4753,7 @@ msgstr "Tipo"
msgid "Mgmt only"
msgstr "Somente gerenciamento"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4764,7 +4787,7 @@ msgstr "Potência de transmissão (dBm)"
msgid "Cable"
msgstr "Cabo"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Descoberto"
@@ -4862,8 +4885,8 @@ msgstr "Modelo da porta de alimentação"
msgid "Rear port template"
msgstr "Modelo da porta traseira"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4887,7 +4910,7 @@ msgstr "Modelo da porta traseira"
msgid "Interface"
msgstr "Interface"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4895,14 +4918,14 @@ msgstr "Interface"
msgid "Console Port"
msgstr "Porta de Console"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Porta do Servidor de Console"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4913,8 +4936,8 @@ msgstr "Porta do Servidor de Console"
msgid "Front Port"
msgstr "Porta Frontal"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4926,24 +4949,24 @@ msgstr "Porta Frontal"
msgid "Rear Port"
msgstr "Porta Traseira"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Porta de Alimentação"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Tomada Elétrica"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Atribuição de Componentes"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "Um item de inventário só pode ser associado a um único componente."
@@ -4951,11 +4974,15 @@ msgstr "Um item de inventário só pode ser associado a um único componente."
msgid "LAG interface"
msgstr "Interface LAG"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Filtre as VLANs disponíveis para atribuição por grupo."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Dispositivo Filho"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4963,44 +4990,32 @@ msgstr ""
"Os dispositivos filhos devem primeiro ser criados e atribuídos ao site e ao "
"rack do dispositivo pai."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Porta de console"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Porta do servidor de console"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Porta frontal"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Tomada elétrica"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Item de Inventário"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Função do Item de Inventário"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "IPv4 Primário"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "IPv6 Primário"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5061,7 +5076,7 @@ msgstr ""
"corresponder ao número selecionado de posições de portas traseiras "
"({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6682,7 +6697,7 @@ msgstr "Modelo de Configuração"
msgid "Site Group"
msgstr "Grupo de Sites"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6691,12 +6706,12 @@ msgstr "Grupo de Sites"
msgid "IP Address"
msgstr "Endereço IP"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "Endereço IPv4"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "Endereço IPv6"
@@ -6734,7 +6749,7 @@ msgstr "Portas de alimentação"
msgid "Power outlets"
msgstr "Tomadas elétricas"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6841,28 +6856,28 @@ msgstr "Somente Gerenciamento"
msgid "VDCs"
msgstr "Contextos de Dispositivos Virtuais"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Módulo Instalado"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Serial do Módulo"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Etiqueta de Patrimônio do Módulo"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Status do Módulo"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Componente"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Itens"
@@ -10473,7 +10488,7 @@ msgstr "Intervalos devem ser especificados no formato (inferior,superior)."
msgid "Range boundaries must be defined as integers."
msgstr "Fronteiras do intervalo devem ser definidas como inteiros."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} deve implementar get_view_name()"
@@ -10825,33 +10840,33 @@ msgstr "Campo customizado '{name}' deve ser um valor único."
msgid "Missing required custom field '{name}'."
msgstr "Campo personalizado obrigatório '{name}' ausente."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Fonte de dados remota"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "caminho dos dados"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Caminho para o arquivo remoto (em relação à raiz da fonte de dados)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "sincronização automática ativada"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Habilita a sincronização automática de dados quando o arquivo de dados for "
"atualizado"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "data sincronizada"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} deve implementar um método sync_data ()."
@@ -12592,7 +12607,7 @@ msgid "Parent Bay"
msgstr "Compartimento Pai"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Regenerar Slug"
@@ -12937,17 +12952,17 @@ msgstr "Peso Máximo"
msgid "Total Weight"
msgstr "Peso Total"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Imagens e Rótulos"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Somente imagens"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Somente rótulos"
@@ -15235,15 +15250,15 @@ msgstr "Cancelar inscrição"
msgid "Subscribe"
msgstr "Inscrever"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Copiar para área de transferência"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Este campo é obrigatório"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Definir como Nulo"
diff --git a/netbox/translations/ru/LC_MESSAGES/django.mo b/netbox/translations/ru/LC_MESSAGES/django.mo
index 0d1053c22..220800442 100644
Binary files a/netbox/translations/ru/LC_MESSAGES/django.mo and b/netbox/translations/ru/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/ru/LC_MESSAGES/django.po b/netbox/translations/ru/LC_MESSAGES/django.po
index 9de842975..2e8dd535b 100644
--- a/netbox/translations/ru/LC_MESSAGES/django.po
+++ b/netbox/translations/ru/LC_MESSAGES/django.po
@@ -8,21 +8,20 @@
# nvoff, 2024
# Михаил Башкиров, 2024
# Сергей Стрельцов, 2024
-# Ivan Petrov, 2024
# Madi Tuleu, 2024
# stavr666, 2024
-# Alexander Ryazanov (alryaz) , 2024
-# Artem Kotik, 2024
# Jeremy Stretch, 2024
+# Artem Kotik, 2024
+# Alexander Ryazanov (alryaz) , 2024
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
-"Last-Translator: Jeremy Stretch, 2024\n"
+"Last-Translator: Alexander Ryazanov (alryaz) , 2024\n"
"Language-Team: Russian (https://app.transifex.com/netbox-community/teams/178115/ru/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -95,8 +94,8 @@ msgstr "Ваш пароль успешно изменен."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -109,7 +108,7 @@ msgstr "Ввод в эксплутацию"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -120,8 +119,8 @@ msgid "Active"
msgstr "Активный"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Оффлайн"
@@ -134,7 +133,7 @@ msgstr "Вывод из эксплуатации"
msgid "Decommissioned"
msgstr "Списан"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Основной"
@@ -340,7 +339,7 @@ msgstr "Точка подключения A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -578,8 +577,8 @@ msgstr "Идентификатор Службы"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -616,7 +615,7 @@ msgstr "Цвет"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -673,8 +672,8 @@ msgstr "Аккаунт провайдера"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -823,7 +822,7 @@ msgstr "Параметры Службы"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1406,11 +1405,11 @@ msgstr "сети провайдера"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1548,7 +1547,7 @@ msgstr "Гарантированная скорость"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1628,7 +1627,7 @@ msgstr "Завершено"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Неисправно"
@@ -1953,7 +1952,7 @@ msgstr "Необходимо загрузить файл или выбрать
msgid "Rack Elevations"
msgstr "Фасады стоек"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2531,7 +2530,7 @@ msgid "Staging"
msgstr "Подготовка к развертыванию"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Вывод из эксплуатации"
@@ -2595,7 +2594,7 @@ msgstr "Выведенный(-ая) из использования"
msgid "Millimeters"
msgstr "Миллиметры"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Дюймы"
@@ -2617,9 +2616,9 @@ msgstr "Сзади вперед"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2649,15 +2648,15 @@ msgstr "Родитель"
msgid "Child"
msgstr "Потомок"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Вид спереди"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2685,7 +2684,7 @@ msgid "Side to rear"
msgstr "Бок назад"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Пассивный"
@@ -2693,15 +2692,15 @@ msgstr "Пассивный"
msgid "Mixed"
msgstr "Смешанный"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (не блокирующий)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (блокирующий)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Калифорнийский стиль"
@@ -2709,42 +2708,42 @@ msgstr "Калифорнийский стиль"
msgid "International/ITA"
msgstr "ITA/Международный"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Проприетарный"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Другой"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/Международный"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Физический"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Виртуальный"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Беспроводной"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Виртуальные интерфейсы"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2754,27 +2753,27 @@ msgstr "Виртуальные интерфейсы"
msgid "Bridge"
msgstr "Мост"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Группа агрегации линков (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (фиксированный)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (модульный)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (объединительная плата)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Сотовая связь"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2782,129 +2781,130 @@ msgstr "Сотовая связь"
msgid "Serial"
msgstr "Серийный"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Коаксиальный"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Стекирование"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Полу"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Полный"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Авто"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Доступ"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Тегированный"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Тегированный (все)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "Стандарт IEEE"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Пассивный режим 24 В (2 пары)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Пассивное напряжение 24 В (4 пары)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Пассивное напряжение 48 В (2 пары)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Пассивное напряжение 48 В (4 пары)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Медь"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Оптоволоконное"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Волокно"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Подключено"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Километры"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Метры"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Сантиметры"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Мили"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Футы"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Килограммы"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Граммы"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Фунты"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Унции"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Резервный"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Однофазный"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Трехфазный"
@@ -3274,7 +3274,7 @@ msgstr "Назначенный VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3353,7 +3353,7 @@ msgid "LAG interface (ID)"
msgstr "Интерфейс LAG (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Виртуальный контекст"
@@ -3428,7 +3428,7 @@ msgstr "Теги"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3475,9 +3475,9 @@ msgstr "Часовой пояс"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3601,9 +3601,9 @@ msgstr "Нумерация"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3693,7 +3693,7 @@ msgstr "Стойка"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Аппаратное обеспечение"
@@ -3801,15 +3801,15 @@ msgstr "Платформа"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3883,7 +3883,7 @@ msgstr "Тип модуля"
#: netbox/templates/extras/customfield.html:26
#: netbox/templates/generic/bulk_import.html:162
msgid "Label"
-msgstr "Этикетка"
+msgstr "Лейбл"
#: netbox/dcim/forms/bulk_edit.py:808 netbox/dcim/forms/filtersets.py:1068
#: netbox/templates/dcim/cable.html:50
@@ -3953,7 +3953,7 @@ msgstr "Распределенная потребляемая мощность (
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Порт питания"
@@ -4041,14 +4041,14 @@ msgstr "Режим"
msgid "VLAN group"
msgstr "Группа VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "VLAN без тегов"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4067,7 +4067,7 @@ msgid "Wireless LANs"
msgstr "Беспроводные LANы"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4076,24 +4076,24 @@ msgid "Addressing"
msgstr "Адресация"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Операция"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Связанные интерфейсы"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4223,7 +4223,7 @@ msgstr "Единица измерения веса модуля"
#: netbox/dcim/forms/bulk_import.py:454
msgid "Limit platform assignments to this manufacturer"
-msgstr "Ограничьте назначение платформ этому производителю"
+msgstr "Ограничьте назначение платформ этим производителем"
#: netbox/dcim/forms/bulk_import.py:476 netbox/dcim/forms/bulk_import.py:1425
#: netbox/tenancy/forms/bulk_import.py:106
@@ -4395,7 +4395,7 @@ msgstr "Физическая среда"
#: netbox/dcim/forms/bulk_import.py:868 netbox/dcim/forms/filtersets.py:1365
msgid "Duplex"
-msgstr "Двухуровневый"
+msgstr "Дуплекс"
#: netbox/dcim/forms/bulk_import.py:873
msgid "Poe mode"
@@ -4432,7 +4432,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "В ПОСТОЯННОГО ТОКА {vdc} не присвоено устройству {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Задний порт"
@@ -4446,7 +4446,7 @@ msgstr "Соответствующий задний порт"
msgid "Physical medium classification"
msgstr "Классификация физических сред"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Установленное устройство"
@@ -4535,7 +4535,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} боковое завершение не найдено: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4565,6 +4565,28 @@ msgstr "Тип питания (AC/DC)"
msgid "Single or three-phase"
msgstr "Однофазный или трехфазный"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "Основной IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "Адрес IPv4 с маской, напр. 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "Основной IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "Адрес IPv6 с длиной префикса, напр. 2001:db8::1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4729,11 +4751,11 @@ msgstr "Вид"
msgid "Mgmt only"
msgstr "Только менеджмент"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
-msgstr "Глобальное уникальное имя"
+msgstr "Глобальное уникальное имя (WWN)"
#: netbox/dcim/forms/filtersets.py:1409
msgid "Wireless channel"
@@ -4763,7 +4785,7 @@ msgstr "Мощность передачи (дБм)"
msgid "Cable"
msgstr "Кабель"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Обнаружено"
@@ -4851,7 +4873,7 @@ msgstr "Шаблон интерфейса"
#: netbox/dcim/forms/model_forms.py:1119
msgid "Power outlet template"
-msgstr "Шаблон розетки"
+msgstr "Шаблон розетки питания"
#: netbox/dcim/forms/model_forms.py:1127
msgid "Power port template"
@@ -4861,8 +4883,8 @@ msgstr "Шаблон порта питания"
msgid "Rear port template"
msgstr "Шаблон заднего порта"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4886,7 +4908,7 @@ msgstr "Шаблон заднего порта"
msgid "Interface"
msgstr "Интерфейс"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4894,14 +4916,14 @@ msgstr "Интерфейс"
msgid "Console Port"
msgstr "Консольный порт"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Порт консольного сервера"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4912,8 +4934,8 @@ msgstr "Порт консольного сервера"
msgid "Front Port"
msgstr "Передний порт"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4925,24 +4947,24 @@ msgstr "Передний порт"
msgid "Rear Port"
msgstr "Задний порт"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Порт питания"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Розетка питания"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Назначение компонентов"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "Инвентарный номер можно присвоить только одному компоненту."
@@ -4950,11 +4972,15 @@ msgstr "Инвентарный номер можно присвоить толь
msgid "LAG interface"
msgstr "Интерфейс LAG"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Фильтровать доступные к назначению VLAN-ы по группе."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Дочернее устройство"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4962,44 +4988,32 @@ msgstr ""
"Сначала необходимо создать дочерние устройства и назначить их сайту и стойке"
" родительского устройства."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Консольный порт"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Порт консольного сервера"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Передний порт"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Розетка питания"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Комплектующие"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Роли комплектующих"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "Основной IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "Основной IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5060,7 +5074,7 @@ msgstr ""
"соответствовать выбранному количеству положений задних портов "
"({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -5088,7 +5102,7 @@ msgstr "Должность должна быть указана для перв
#: netbox/dcim/models/device_components.py:63
#: netbox/extras/models/customfields.py:111
msgid "label"
-msgstr " Метка"
+msgstr " лейбл"
#: netbox/dcim/models/cables.py:71
msgid "length"
@@ -5096,7 +5110,7 @@ msgstr "Длина"
#: netbox/dcim/models/cables.py:78
msgid "length unit"
-msgstr "длина единицы"
+msgstr "единица длины"
#: netbox/dcim/models/cables.py:95
msgid "cable"
@@ -5147,7 +5161,7 @@ msgid ""
"Duplicate termination found for {app_label}.{model} {termination_id}: cable "
"{cable_pk}"
msgstr ""
-"Обнаружен дубликат увольнения для {app_label}.{model} {termination_id}: "
+"Обнаружен дубликат подключения для {app_label}.{model} {termination_id}: "
"кабель {cable_pk}"
#: netbox/dcim/models/cables.py:343
@@ -5193,7 +5207,7 @@ msgstr ""
#: netbox/dcim/models/device_component_templates.py:58
#: netbox/dcim/models/device_components.py:66
msgid "Physical label"
-msgstr "Физическая этикетка"
+msgstr "Физический лейбл"
#: netbox/dcim/models/device_component_templates.py:103
msgid "Component templates cannot be moved to a different device type."
@@ -5267,24 +5281,24 @@ msgstr "Фаза (для трехфазных)"
#: netbox/dcim/models/device_component_templates.py:358
msgid "power outlet template"
-msgstr "шаблон розетки"
+msgstr "шаблон розетки питания"
#: netbox/dcim/models/device_component_templates.py:359
msgid "power outlet templates"
-msgstr "шаблоны розеток"
+msgstr "шаблоны розеток питания"
#: netbox/dcim/models/device_component_templates.py:368
#, python-brace-format
msgid "Parent power port ({power_port}) must belong to the same device type"
msgstr ""
-"Родительский порт питания ({power_port}) должно принадлежать к тому же типу "
+"Родительский порт питания ({power_port}) должен принадлежать тому же типу "
"устройства"
#: netbox/dcim/models/device_component_templates.py:372
#, python-brace-format
msgid "Parent power port ({power_port}) must belong to the same module type"
msgstr ""
-"Родительский порт питания ({power_port}) должен принадлежать к одному типу "
+"Родительский порт питания ({power_port}) должен принадлежать тому же типу "
"модулей"
#: netbox/dcim/models/device_component_templates.py:424
@@ -5498,18 +5512,18 @@ msgstr "порты питания"
#: netbox/dcim/models/device_components.py:488
msgid "power outlet"
-msgstr "розетка"
+msgstr "розетка питания"
#: netbox/dcim/models/device_components.py:489
msgid "power outlets"
-msgstr "розетки"
+msgstr "розетки питания"
#: netbox/dcim/models/device_components.py:500
#, python-brace-format
msgid "Parent power port ({power_port}) must belong to the same device"
msgstr ""
-"Родительский порт питания ({power_port}) должно принадлежать одному и тому "
-"же устройству"
+"Родительский порт питания ({power_port}) должен принадлежать тому же "
+"устройству"
#: netbox/dcim/models/device_components.py:531 netbox/vpn/models/crypto.py:81
#: netbox/vpn/models/crypto.py:226
@@ -5538,7 +5552,7 @@ msgstr "скорость (Кбит/с)"
#: netbox/dcim/models/device_components.py:621
msgid "duplex"
-msgstr "дюплекс"
+msgstr "дуплекс"
#: netbox/dcim/models/device_components.py:631
msgid "64-bit World Wide Name"
@@ -5990,8 +6004,7 @@ msgstr "роли устройств"
#: netbox/dcim/models/devices.py:515
msgid "Optionally limit this platform to devices of a certain manufacturer"
msgstr ""
-"Опционально ограничьте эту платформу устройствами определенного "
-"производителя"
+"Опционально ограничьте эту платформу устройствам определенного производителя"
#: netbox/dcim/models/devices.py:527
msgid "platform"
@@ -6007,7 +6020,7 @@ msgstr "Функция, которую выполняет это устройс
#: netbox/dcim/models/devices.py:608
msgid "Chassis serial number, assigned by the manufacturer"
-msgstr "Серийный номер корпуса, присвоенный производителем"
+msgstr "Серийный номер шасси, присвоенный производителем"
#: netbox/dcim/models/devices.py:616 netbox/dcim/models/devices.py:1182
msgid "A unique tag used to identify this device"
@@ -6671,7 +6684,7 @@ msgstr "Шаблон конфигурации"
msgid "Site Group"
msgstr "Группа сайтов"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6680,12 +6693,12 @@ msgstr "Группа сайтов"
msgid "IP Address"
msgstr "IP-адрес"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "Адрес IPv4"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "Адрес IPv6"
@@ -6723,7 +6736,7 @@ msgstr "Порты питания"
msgid "Power outlets"
msgstr "Розетки питания"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6830,28 +6843,28 @@ msgstr "Только управление"
msgid "VDCs"
msgstr "Виртуальные контексты устройств(VDCs)"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Установленный модуль"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Серийный номер модуля"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Тег активов модуля"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Состояние модуля"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Компонент"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Предметы"
@@ -7553,7 +7566,7 @@ msgstr "Название группы"
#: netbox/templates/extras/customfield.html:38
#: netbox/templates/generic/bulk_import.html:118
msgid "Required"
-msgstr "Требуется"
+msgstr "Обязательно"
#: netbox/extras/forms/bulk_edit.py:48 netbox/extras/forms/filtersets.py:75
msgid "Must be unique"
@@ -7720,8 +7733,8 @@ msgid ""
"Quoted string of comma-separated field choices with optional labels "
"separated by colon: \"choice1:First Choice,choice2:Second Choice\""
msgstr ""
-"Цитируемая строка с вариантами выбора полей, разделенных запятыми, с "
-"дополнительными метками, разделенными двоеточием: «Choice1:First Choice, "
+"Строка, заключенная в кавычки, с вариантами значений полей, разделенных "
+"запятыми, с дополнительными метками через двоеточие: «Choice1:First Choice, "
"Choice2:Second Choice»"
#: netbox/extras/forms/bulk_import.py:123 netbox/extras/models/models.py:323
@@ -7946,7 +7959,7 @@ msgid ""
"choice by appending it with a colon. Example:"
msgstr ""
"Введите по одному варианту в строке. Для каждого варианта можно указать "
-"дополнительную метку, добавив ее двоеточием. Пример:"
+"дополнительный лейбл через двоеточие. Пример:"
#: netbox/extras/forms/model_forms.py:212
#: netbox/templates/extras/customlink.html:10
@@ -10453,7 +10466,7 @@ msgstr "В форме должны быть указаны диапазоны (
msgid "Range boundaries must be defined as integers."
msgstr "Границы диапазона должны быть определены целыми числами."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} должен реализовать функцию get_view_name ()"
@@ -10772,7 +10785,7 @@ msgid ""
"Tag slugs separated by commas, encased with double quotes (e.g. "
"\"tag1,tag2,tag3\")"
msgstr ""
-"Метки тегов разделены запятыми и заключены в двойные кавычки (например, "
+"Подстрока тегов разделены запятыми и заключены в двойные кавычки (например, "
"«tag1, tag2, tag3\")"
#: netbox/netbox/forms/base.py:120
@@ -10808,32 +10821,32 @@ msgstr "Настраиваемое поле '{name}'должно иметь ун
msgid "Missing required custom field '{name}'."
msgstr "Отсутствует обязательное настраиваемое поле '{name}'."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Удаленный источник данных"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "путь к данным"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Путь к удаленному файлу (относительно корня источника данных)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "автоматическая синхронизация включена"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Включить автоматическую синхронизацию данных при обновлении файла данных"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "дата синхронизирована"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} должен реализовать метод sync_data ()."
@@ -10852,7 +10865,7 @@ msgstr "Группы арендаторов"
#: netbox/netbox/navigation/menu.py:34
msgid "Contact Groups"
-msgstr "Контактные группы"
+msgstr "Группы контактов"
#: netbox/netbox/navigation/menu.py:35
#: netbox/templates/tenancy/contactrole.html:8
@@ -11302,15 +11315,15 @@ msgstr ""
#: netbox/netbox/registry.py:14
#, python-brace-format
msgid "Invalid store: {key}"
-msgstr "Неверный магазин: {key}"
+msgstr "Неверное хранилище: {key}"
#: netbox/netbox/registry.py:17
msgid "Cannot add stores to registry after initialization"
-msgstr "Невозможно добавить магазины в реестр после инициализации"
+msgstr "Невозможно добавить хранилище в реестр после инициализации"
#: netbox/netbox/registry.py:20
msgid "Cannot delete stores from registry"
-msgstr "Невозможно удалить магазины из реестра"
+msgstr "Невозможно удалить хранилище из реестра"
#: netbox/netbox/settings.py:762
msgid "Czech"
@@ -11400,7 +11413,7 @@ msgstr "Поле"
#: netbox/netbox/tables/tables.py:252
msgid "Value"
-msgstr "Ценность"
+msgstr "Значение"
#: netbox/netbox/tests/dummy_plugin/navigation.py:29
msgid "Dummy Plugin"
@@ -12537,7 +12550,7 @@ msgstr "Добавить отсеки для модулей"
#: netbox/templates/dcim/device/poweroutlets.html:24
msgid "Add Power Outlets"
-msgstr "Добавить розетки"
+msgstr "Добавить розетки питания"
#: netbox/templates/dcim/device/powerports.html:24
msgid "Add Power Port"
@@ -12577,7 +12590,7 @@ msgid "Parent Bay"
msgstr "Родительский залив"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Сгенерировать Подстроку"
@@ -12922,17 +12935,17 @@ msgstr "Максимальный вес"
msgid "Total Weight"
msgstr "Общий вес"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Изображения и лейблы"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Только изображения"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Только лейблы"
@@ -14475,7 +14488,7 @@ msgstr "Родительская группа арендаторов (ID)"
#: netbox/tenancy/filtersets.py:176
msgid "Parent tenant group (slug)"
-msgstr "Родительская группа арендаторов (короткая метка)"
+msgstr "Родительская группа арендаторов (подстрока)"
#: netbox/tenancy/filtersets.py:182 netbox/tenancy/filtersets.py:202
msgid "Tenant group (ID)"
@@ -15160,13 +15173,13 @@ msgid ""
"Invalid permission name: {name}. Must be in the format "
"._"
msgstr ""
-"Неверное имя разрешения: {name}. Должно быть в формате "
+"Неверное имя правила доступа: {name}. Должно быть в формате "
"._"
#: netbox/utilities/permissions.py:60
#, python-brace-format
msgid "Unknown app_label/model_name for {name}"
-msgstr "Неизвестное app_label/имя_модели для {name}"
+msgstr "Неизвестный app_label/model_name для {name}"
#: netbox/utilities/request.py:76
#, python-brace-format
@@ -15218,15 +15231,15 @@ msgstr "Отписаться"
msgid "Subscribe"
msgstr "Подписаться"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Скопировать в буфер обмена"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Это поле обязательно"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Установить значение Null"
diff --git a/netbox/translations/tr/LC_MESSAGES/django.mo b/netbox/translations/tr/LC_MESSAGES/django.mo
index b60c9aa96..34455578e 100644
Binary files a/netbox/translations/tr/LC_MESSAGES/django.mo and b/netbox/translations/tr/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/tr/LC_MESSAGES/django.po b/netbox/translations/tr/LC_MESSAGES/django.po
index 9664e4f81..d0f79a747 100644
--- a/netbox/translations/tr/LC_MESSAGES/django.po
+++ b/netbox/translations/tr/LC_MESSAGES/django.po
@@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Turkish (https://app.transifex.com/netbox-community/teams/178115/tr/)\n"
@@ -90,8 +90,8 @@ msgstr "Şifreniz başarıyla değiştirildi."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -104,7 +104,7 @@ msgstr "Tedarik"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -115,8 +115,8 @@ msgid "Active"
msgstr "Aktif"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Çevrim dışı"
@@ -129,7 +129,7 @@ msgstr "Hazırlıktan Kaldırma"
msgid "Decommissioned"
msgstr "Hizmet dışı bırakıldı"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Birincil"
@@ -335,7 +335,7 @@ msgstr "Fesih A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -573,8 +573,8 @@ msgstr "Servis ID"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -611,7 +611,7 @@ msgstr "Renk"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -668,8 +668,8 @@ msgstr "Sağlayıcı hesabı"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -818,7 +818,7 @@ msgstr "Servis Parametreleri"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1398,11 +1398,11 @@ msgstr "sağlayıcı ağları"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1540,7 +1540,7 @@ msgstr "Taahhüt Oranı"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1619,7 +1619,7 @@ msgstr "Tamamlandı"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Başarısız"
@@ -1945,7 +1945,7 @@ msgstr ""
msgid "Rack Elevations"
msgstr "Raf Yükseltmeleri"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2520,7 +2520,7 @@ msgid "Staging"
msgstr "Sahneleme"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Hizmetten çıkarma"
@@ -2584,7 +2584,7 @@ msgstr "Kullanımdan kaldırıldı"
msgid "Millimeters"
msgstr "Milimetre"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "İnç"
@@ -2606,9 +2606,9 @@ msgstr "Arkadan öne"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2638,15 +2638,15 @@ msgstr "Ebeveyn"
msgid "Child"
msgstr "Çocuk"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Ön"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2674,7 +2674,7 @@ msgid "Side to rear"
msgstr "Yandan arkaya"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Pasif"
@@ -2682,15 +2682,15 @@ msgstr "Pasif"
msgid "Mixed"
msgstr "Karışık"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (Kilitsiz)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (Kilitleme)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Kaliforniya Tarzı"
@@ -2698,42 +2698,42 @@ msgstr "Kaliforniya Tarzı"
msgid "International/ITA"
msgstr "Uluslararası/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Tescilli"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Diğer"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/Uluslararası"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Fiziksel"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Sanal"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Kablosuz"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Sanal arayüzler"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2743,27 +2743,27 @@ msgstr "Sanal arayüzler"
msgid "Bridge"
msgstr "Köprü"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Bağlantı Toplama Grubu (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (sabit)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (modüler)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (arka panel)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Hücresel"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2771,129 +2771,130 @@ msgstr "Hücresel"
msgid "Serial"
msgstr "Seri"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Koaksiyel"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "İstifleme"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Yarım"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Dolu"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Oto"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Erişim"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Etiketlenmiş"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Etiketlenmiş (Tümü)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "IEEE Standardı"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Pasif 24V (2 çift)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Pasif 24V (4 çift)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Pasif 48V (2 çift)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Pasif 48V (4 çift)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Bakır"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Fiber Optik"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Fiber"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Bağlı"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Kilometre"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Sayaçlar"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Santimetre"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Mil"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Feet"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Kilogram"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Gramlar"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Pound'lar"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "ons"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Yedekli"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Tek fazlı"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Üç fazlı"
@@ -3263,7 +3264,7 @@ msgstr "Atanmış VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3342,7 +3343,7 @@ msgid "LAG interface (ID)"
msgstr "LAG arabirimi (ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Sanal Cihaz Bağlamı"
@@ -3417,7 +3418,7 @@ msgstr "Etiketler"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3464,9 +3465,9 @@ msgstr "Saat dilimi"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3590,9 +3591,9 @@ msgstr "Numaralandırma"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3682,7 +3683,7 @@ msgstr "Raf"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Donanım"
@@ -3790,15 +3791,15 @@ msgstr "Platform"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3942,7 +3943,7 @@ msgstr "Tahsis edilen güç çekimi (watt)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Güç bağlantı noktası"
@@ -4030,14 +4031,14 @@ msgstr "Modu"
msgid "VLAN group"
msgstr "VLAN grubu"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "Etiketsiz VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4056,7 +4057,7 @@ msgid "Wireless LANs"
msgstr "Kablosuz LAN'lar"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4065,24 +4066,24 @@ msgid "Addressing"
msgstr "Adresleme"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Operasyon"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "İlgili Arayüzler"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4421,7 +4422,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} cihaza atanmadı {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Arka bağlantı noktası"
@@ -4435,7 +4436,7 @@ msgstr "İlgili arka bağlantı noktası"
msgid "Physical medium classification"
msgstr "Fiziksel ortam sınıflandırması"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Yüklü cihaz"
@@ -4524,7 +4525,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} yan sonlandırma bulunamadı: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4554,6 +4555,28 @@ msgstr "Besleme tipi (AC/DC)"
msgid "Single or three-phase"
msgstr "Tek veya üç fazlı"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "Birincil IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "Maskeli IPv4 adresi, örn. 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "Birincil IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "Önek uzunluğuna sahip IPv6 adresi, örn. 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4716,7 +4739,7 @@ msgstr "Tür"
msgid "Mgmt only"
msgstr "Sadece Mgmt"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4750,7 +4773,7 @@ msgstr "İletim gücü (dBm)"
msgid "Cable"
msgstr "Kablo"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Keşfedildi"
@@ -4848,8 +4871,8 @@ msgstr "Güç bağlantı noktası şablonu"
msgid "Rear port template"
msgstr "Arka bağlantı noktası şablonu"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4873,7 +4896,7 @@ msgstr "Arka bağlantı noktası şablonu"
msgid "Interface"
msgstr "Arayüz"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4881,14 +4904,14 @@ msgstr "Arayüz"
msgid "Console Port"
msgstr "Konsol Bağlantı Noktası"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Konsol Sunucusu Bağlantı Noktası"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4899,8 +4922,8 @@ msgstr "Konsol Sunucusu Bağlantı Noktası"
msgid "Front Port"
msgstr "Ön Bağlantı Noktası"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4912,24 +4935,24 @@ msgstr "Ön Bağlantı Noktası"
msgid "Rear Port"
msgstr "Arka Bağlantı Noktası"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Güç Bağlantı Noktası"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Güç Çıkışı"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Bileşen Ataması"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "Bir InventoryItem yalnızca tek bir bileşene atanabilir."
@@ -4937,11 +4960,15 @@ msgstr "Bir InventoryItem yalnızca tek bir bileşene atanabilir."
msgid "LAG interface"
msgstr "LAG arayüzü"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Gruba göre atama için mevcut VLAN'ları filtreleyin."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Çocuk Cihazı"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4949,44 +4976,32 @@ msgstr ""
"Alt aygıtlar önce oluşturulmalı ve ana aygıtın sahasına ve rafına "
"atanmalıdır."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Konsol bağlantı noktası"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Konsol sunucusu bağlantı noktası"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Ön bağlantı noktası"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Güç çıkışı"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Envanter Öğesi"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Envanter Öğesi Rolü"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "Birincil IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "Birincil IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5045,7 +5060,7 @@ msgstr ""
"Oluşturulacak ön bağlantı noktalarının sayısı ({frontport_count}) seçilen "
"arka port konumu sayısıyla eşleşmelidir ({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6613,7 +6628,7 @@ msgstr "Yapılandırma Şablonu"
msgid "Site Group"
msgstr "Site Grubu"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6622,12 +6637,12 @@ msgstr "Site Grubu"
msgid "IP Address"
msgstr "IP Adresi"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "IPv4 Adresi"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "IPv6 Adresi"
@@ -6665,7 +6680,7 @@ msgstr "Güç bağlantı noktaları"
msgid "Power outlets"
msgstr "Elektrik prizleri"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6772,28 +6787,28 @@ msgstr "Yalnızca Yönetim"
msgid "VDCs"
msgstr "VDC'ler"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Yüklü Modül"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Modül Seri"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Modül Varlık Etiketi"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Modül Durumu"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Bileşen"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Öğeler"
@@ -10374,7 +10389,7 @@ msgstr "Aralıklar formda belirtilmelidir (alt, üst)."
msgid "Range boundaries must be defined as integers."
msgstr "Menzil sınırları tamsayılar olarak tanımlanmalıdır."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} get_view_name () uygulamasını uygulamalıdır"
@@ -10727,33 +10742,33 @@ msgstr "Özel alan '{name}'benzersiz bir değere sahip olmalıdır."
msgid "Missing required custom field '{name}'."
msgstr "Gerekli özel alan eksik '{name}'."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Uzak veri kaynağı"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "veri yolu"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Uzak dosyanın yolu (veri kaynağı köküne göre)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "otomatik senkronizasyon etkin"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr ""
"Veri dosyası güncellendiğinde verilerin otomatik senkronizasyonunu "
"etkinleştir"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "senkronize edilen tarih"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} bir sync_data () yöntemi uygulamalıdır."
@@ -12496,7 +12511,7 @@ msgid "Parent Bay"
msgstr "Ebeveyn Körfezi"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Yeniden kısa ad oluştur"
@@ -12841,17 +12856,17 @@ msgstr "Maksimum Ağırlık"
msgid "Total Weight"
msgstr "Toplam Ağırlık"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Resimler ve Etiketler"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Yalnızca resimler"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Yalnızca etiketler"
@@ -15121,15 +15136,15 @@ msgstr "Aboneliği iptal et"
msgid "Subscribe"
msgstr "Abone ol"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Panoya kopyala"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Bu alan zorunludur"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Sıfır Ayarla"
diff --git a/netbox/translations/uk/LC_MESSAGES/django.mo b/netbox/translations/uk/LC_MESSAGES/django.mo
index f5555e3b8..2847adf1a 100644
Binary files a/netbox/translations/uk/LC_MESSAGES/django.mo and b/netbox/translations/uk/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/uk/LC_MESSAGES/django.po b/netbox/translations/uk/LC_MESSAGES/django.po
index 98e85b167..6786b1492 100644
--- a/netbox/translations/uk/LC_MESSAGES/django.po
+++ b/netbox/translations/uk/LC_MESSAGES/django.po
@@ -5,17 +5,17 @@
#
# Translators:
# Volodymyr Pidgornyi, 2024
-# Jeremy Stretch, 2024
# Vladyslav V. Prodan, 2024
+# Jeremy Stretch, 2024
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
-"Last-Translator: Vladyslav V. Prodan, 2024\n"
+"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Ukrainian (https://app.transifex.com/netbox-community/teams/178115/uk/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -89,8 +89,8 @@ msgstr "Ваш пароль успішно змінено."
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -103,7 +103,7 @@ msgstr "Забезпечення"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -114,8 +114,8 @@ msgid "Active"
msgstr "Активний"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "Офлайн"
@@ -128,7 +128,7 @@ msgstr "Зняття резервування"
msgid "Decommissioned"
msgstr "Виведені з експлуатації"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "Первинний"
@@ -334,7 +334,7 @@ msgstr "Припинення A (ідентіфікатор)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -572,8 +572,8 @@ msgstr "Ідентифікатор служби"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -610,7 +610,7 @@ msgstr "Колір"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -667,8 +667,8 @@ msgstr "Обліковий запис постачальника"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -817,7 +817,7 @@ msgstr "Параметри обслуговування"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1400,11 +1400,11 @@ msgstr "мережі провайдерів"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1542,7 +1542,7 @@ msgstr "Коефіцієнт комісії"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1621,7 +1621,7 @@ msgstr "Завершено"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "Збій"
@@ -1945,7 +1945,7 @@ msgstr "Потрібно завантажити файл або вибрати
msgid "Rack Elevations"
msgstr "Висота стійки"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2521,7 +2521,7 @@ msgid "Staging"
msgstr "Підготовка"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "Виведення з експлуатації"
@@ -2585,7 +2585,7 @@ msgstr "Застарілий"
msgid "Millimeters"
msgstr "Міліметри"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "Дюйми"
@@ -2607,9 +2607,9 @@ msgstr "Ззаду спереду"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2639,15 +2639,15 @@ msgstr "Прабатько"
msgid "Child"
msgstr "Підпорядкований"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "Спереду"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2675,7 +2675,7 @@ msgid "Side to rear"
msgstr "Збоку ззаду"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "Пасивний"
@@ -2683,15 +2683,15 @@ msgstr "Пасивний"
msgid "Mixed"
msgstr "Змішаний"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA (без блокування)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA (з блокуванням)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "Каліфорнійський стиль"
@@ -2699,42 +2699,42 @@ msgstr "Каліфорнійський стиль"
msgid "International/ITA"
msgstr "Міжнародний/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "Пропрієтарний"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "Інше"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/Міжнародні"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "Фізичний"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "Віртуальний"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "Бездротовий"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "Віртуальні інтерфейси"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2744,27 +2744,27 @@ msgstr "Віртуальні інтерфейси"
msgid "Bridge"
msgstr "Міст"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "Група агрегації каналів (LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "Ethernet (фіксований)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "Ethernet (модульний)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "Ethernet (панель)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "Стільниковий"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2772,129 +2772,130 @@ msgstr "Стільниковий"
msgid "Serial"
msgstr "Серійний"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "Коаксіальний"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "Укладання"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "Половина"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "Повний"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "Авто"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "Доступ"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "З мітками"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "З мітками (Усі)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "Стандарт IEEE"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "Пасивний 24В (2-парний)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "Пасивний 24В (4-парний)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "Пасивний 48В (2-парний)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "Пасивний 48В (4-парний)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "Мідний"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "Волоконно-оптичний"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "Волоконний"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "Підключений"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "Кілометри"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "Метри"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "Сантиметри"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "Милі"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "Фути"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "Кілограми"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "Грами"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "Фунтів"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "Унцій"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "Надлишковий"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "Однофазний"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "Трифазний"
@@ -3264,7 +3265,7 @@ msgstr "Призначений VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3343,7 +3344,7 @@ msgid "LAG interface (ID)"
msgstr "Інтерфейс LAG (ідентіфікатор)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "Контекст віртуального пристрою"
@@ -3418,7 +3419,7 @@ msgstr "Мітки"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3465,9 +3466,9 @@ msgstr "Часовий пояс"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3591,9 +3592,9 @@ msgstr "Нумерація"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3683,7 +3684,7 @@ msgstr "Стійка"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "Апаратне забезпечення"
@@ -3791,15 +3792,15 @@ msgstr "Платформа"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3943,7 +3944,7 @@ msgstr "Виділена споживана потужність (Вт)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "Порт живлення"
@@ -4031,14 +4032,14 @@ msgstr "Режим"
msgid "VLAN group"
msgstr "Група VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "VLAN без міток"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4057,7 +4058,7 @@ msgid "Wireless LANs"
msgstr "Бездротові локальні мережі"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4066,24 +4067,24 @@ msgid "Addressing"
msgstr "Адресація"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "Операція"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "Пов'язані інтерфейси"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4426,7 +4427,7 @@ msgstr ""
"{device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "Задній порт"
@@ -4440,7 +4441,7 @@ msgstr "Відповідний задній порт"
msgid "Physical medium classification"
msgstr "Класифікація фізичного середовища"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "Встановлений пристрій"
@@ -4529,7 +4530,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} кінцева сторона не знайдена: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4559,6 +4560,28 @@ msgstr "Тип живлення (змінній/постійний струм)"
msgid "Single or three-phase"
msgstr "Однофазний або трифазний (струм)"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "Первинний IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "IPv4 адреса з маскою, наприклад 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "Первинний IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "IPv6 адреса з довжиною префікса, наприклад 2001:db8: :1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4721,7 +4744,7 @@ msgstr "Вид"
msgid "Mgmt only"
msgstr "Тільки управління"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4755,7 +4778,7 @@ msgstr "Потужність передачі (дБм)"
msgid "Cable"
msgstr "Кабель"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "Виявлено"
@@ -4853,8 +4876,8 @@ msgstr "Шаблон порту живлення"
msgid "Rear port template"
msgstr "Шаблон порту ззаду"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4878,7 +4901,7 @@ msgstr "Шаблон порту ззаду"
msgid "Interface"
msgstr "Інтерфейс"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4886,14 +4909,14 @@ msgstr "Інтерфейс"
msgid "Console Port"
msgstr "Порт консолі"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Порт консольного сервера"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4904,8 +4927,8 @@ msgstr "Порт консольного сервера"
msgid "Front Port"
msgstr "Передній порт"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4917,24 +4940,24 @@ msgstr "Передній порт"
msgid "Rear Port"
msgstr "Порт ззаду"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "Порт живлення"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "Електрична розетка"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "Призначення компонентів"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "Елемент інвентаря можна призначити лише одному компоненту."
@@ -4942,11 +4965,15 @@ msgstr "Елемент інвентаря можна призначити лиш
msgid "LAG interface"
msgstr "Інтерфейс LAG"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "Фільтр VLAN, доступних для призначення за групами."
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "Підпорядкований пристрій"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
@@ -4954,44 +4981,32 @@ msgstr ""
"Підпорядковані пристрої спочатку повинні бути створені та присвоєні до тех. "
"майданчику та стійки батьківського пристрою."
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Консольний порт"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Порт консольного сервера"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "Передній порт"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "Розетка живлення"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "Елемент інвентаря"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "Роль елемента інвентаря"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "Первинний IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "Первинний IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5051,7 +5066,7 @@ msgstr ""
"Кількість передніх портів, які потрібно створити ({frontport_count}) повинен"
" відповідати вибраній кількості позицій портів ззаду ({rearport_count})."
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -5686,8 +5701,7 @@ msgstr ""
#: netbox/dcim/models/device_components.py:886
msgid "Cannot specify custom frequency with channel selected."
-msgstr ""
-"Неможливо вказати користувальницьку частоту при вибраному каналі (Wi-Fi)."
+msgstr "Неможливо вказати користувацьку частоту при вибраному каналі (Wi-Fi)."
#: netbox/dcim/models/device_components.py:892
msgid "Channel width may be set only on wireless interfaces."
@@ -5697,7 +5711,7 @@ msgstr ""
#: netbox/dcim/models/device_components.py:894
msgid "Cannot specify custom width with channel selected."
-msgstr "Неможливо вказати користувальницьку ширину при вибраному каналі."
+msgstr "Неможливо вказати користувацьку ширину при вибраному каналі."
#: netbox/dcim/models/device_components.py:902
#, python-brace-format
@@ -6667,7 +6681,7 @@ msgstr "Шаблон конфігурації"
msgid "Site Group"
msgstr "Група тех. майданчиків"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6676,12 +6690,12 @@ msgstr "Група тех. майданчиків"
msgid "IP Address"
msgstr "IP-адреса"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "Адреса IPv4"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "Адреса IPv6"
@@ -6719,7 +6733,7 @@ msgstr "Порти живлення"
msgid "Power outlets"
msgstr "Розетки"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6826,28 +6840,28 @@ msgstr "Тільки управління"
msgid "VDCs"
msgstr "Джерела живлення постійного струму "
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "Встановлений модуль"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "Послідовний модуль "
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "Призначеня мітки на модуль"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "Статус модуля"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "Компонент"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "Предмети"
@@ -7411,8 +7425,8 @@ msgstr "Примітка"
#: netbox/extras/dashboard/widgets.py:146
msgid "Display some arbitrary custom content. Markdown is supported."
msgstr ""
-"Відображення будь-якого довільного користувальницького вмісту. Підтримується"
-" розмітка Markdown."
+"Відображення будь-якого довільного користувацького вмісту. Підтримується "
+"розмітка Markdown."
#: netbox/extras/dashboard/widgets.py:159
msgid "Object Counts"
@@ -7698,11 +7712,11 @@ msgstr "Набір для вибору (для полів виділення)"
#: netbox/extras/forms/bulk_import.py:63
msgid "Whether the custom field is displayed in the UI"
-msgstr "Чи відображатиметься користувальницьке поле в інтерфейсі користувача"
+msgstr "Чи відображатиметься користувацьке поле в інтерфейсі користувача"
#: netbox/extras/forms/bulk_import.py:69
msgid "Whether the custom field is editable in the UI"
-msgstr "Чи можна редагувати користувальницьке поле в інтерфейсі користувача"
+msgstr "Чи можна редагувати користувацьке поле в інтерфейсі користувача"
#: netbox/extras/forms/bulk_import.py:85
msgid "The base set of predefined choices to use (if any)"
@@ -7886,7 +7900,7 @@ msgstr "Групи орендарів"
#: netbox/extras/forms/model_forms.py:49
msgid "The type(s) of object that have this custom field"
-msgstr "Тип(и) об'єкта, які мають користувальницьке поле"
+msgstr "Тип(и) об'єкта, які мають користувацьке поле"
#: netbox/extras/forms/model_forms.py:52
msgid "Default value"
@@ -7908,7 +7922,7 @@ msgstr "Вкажіть параметри запиту як об'єкт JSON."
#: netbox/extras/forms/model_forms.py:73
#: netbox/templates/extras/customfield.html:10
msgid "Custom Field"
-msgstr "Користувальницькі поля"
+msgstr "Користувацьке поле"
#: netbox/extras/forms/model_forms.py:85
msgid ""
@@ -7941,7 +7955,7 @@ msgstr ""
#: netbox/extras/forms/model_forms.py:212
#: netbox/templates/extras/customlink.html:10
msgid "Custom Link"
-msgstr "Користувальницькі посилання"
+msgstr "Користувацьке посилання"
#: netbox/extras/forms/model_forms.py:214
msgid "Templates"
@@ -8172,7 +8186,7 @@ msgstr "Об'єкт (и), до яких застосовується це пол
#: netbox/extras/models/customfields.py:82
msgid "The type of data this custom field holds"
-msgstr "Тип даних, які містить користувацьницьке поле"
+msgstr "Тип даних, які містить користувацьке поле"
#: netbox/extras/models/customfields.py:89
msgid "The type of NetBox object this field maps to (for object fields)"
@@ -8189,7 +8203,7 @@ msgstr "Дозволені лише буквено-цифрові символи
#: netbox/extras/models/customfields.py:104
msgid "Double underscores are not permitted in custom field names."
-msgstr "Подвійне підкреслення не дозволено у користувальницьких назвах полів."
+msgstr "Подвійне підкреслення не дозволено у користувацьких назвах полів."
#: netbox/extras/models/customfields.py:115
msgid ""
@@ -8205,7 +8219,7 @@ msgstr "назва групи"
#: netbox/extras/models/customfields.py:122
msgid "Custom fields within the same group will be displayed together"
-msgstr "Користувальницькі поля в одній групі відображатимуться разом"
+msgstr "Користувацькі поля в одній групі відображатимуться разом"
#: netbox/extras/models/customfields.py:130
msgid "required"
@@ -8318,13 +8332,12 @@ msgstr "набір вибору"
#: netbox/extras/models/customfields.py:210
msgid "Specifies whether the custom field is displayed in the UI"
msgstr ""
-"Визначає, чи відображатиметься користувальницьке поле в інтерфейсі "
-"користувача"
+"Визначає, чи відображатиметься користувацьке поле в інтерфейсі користувача"
#: netbox/extras/models/customfields.py:217
msgid "Specifies whether the custom field value can be edited in the UI"
msgstr ""
-"Визначає, чи можна редагувати значення користувальницького поля в інтерфейсі"
+"Визначає, чи можна редагувати значення користувацького поля в інтерфейсі"
#: netbox/extras/models/customfields.py:221
msgid "is cloneable"
@@ -8336,11 +8349,11 @@ msgstr "Повторюйте це значення під час клонува
#: netbox/extras/models/customfields.py:239
msgid "custom field"
-msgstr "користувальницьке поле"
+msgstr "користувацьке поле"
#: netbox/extras/models/customfields.py:240
msgid "custom fields"
-msgstr "користувальницькі поля"
+msgstr "користувацькі поля"
#: netbox/extras/models/customfields.py:329
#, python-brace-format
@@ -8487,11 +8500,11 @@ msgstr "Вибір автоматично впорядковується за а
#: netbox/extras/models/customfields.py:782
msgid "custom field choice set"
-msgstr "набір вибору користувальницького поля"
+msgstr "набір вибору користувацького поля"
#: netbox/extras/models/customfields.py:783
msgid "custom field choice sets"
-msgstr "набори вибору користувальницького поля"
+msgstr "набори вибору користувацького поля"
#: netbox/extras/models/customfields.py:819
msgid "Must define base or extra choices."
@@ -8597,10 +8610,11 @@ msgid ""
"event , model , timestamp , "
"username , request_id , and data ."
msgstr ""
-"Шаблон Jinja2 для власного тіла запиту. Якщо він порожній, буде включено "
-"об'єкт JSON, що представляє зміну. Доступні контекстні дані включають: "
-"подія , модель , мітка часу , ім'я"
-" користувача , ідентифікатор запиту , і дані ."
+"Шаблон Jinja2 для користувацького тіла запиту. Якщо він порожній, буде "
+"включено об'єкт JSON, що представляє зміну. Доступні контекстні дані "
+"включають: подія , модель , мітка часу ,"
+" ім'я користувача , ідентифікатор запиту , і "
+"дані ."
#: netbox/extras/models/models.py:204
msgid "secret"
@@ -8678,11 +8692,11 @@ msgstr "Примусове відкриття посилання в новому
#: netbox/extras/models/models.py:341
msgid "custom link"
-msgstr "користувальницьке посилання"
+msgstr "користувацьке посилання"
#: netbox/extras/models/models.py:342
msgid "custom links"
-msgstr "користувальницькі посилання"
+msgstr "користувацькі посилання"
#: netbox/extras/models/models.py:389
msgid "The object type(s) to which this template applies."
@@ -9093,8 +9107,7 @@ msgstr "Правила перевірки повинні бути передан
#, python-brace-format
msgid "Custom validation failed for {attribute}: {exception}"
msgstr ""
-"Користувальницька перевірка зіткнулася з невдачею через{attribute}: "
-"{exception}"
+"Користувацька перевірка зіткнулася з невдачею через{attribute}: {exception}"
#: netbox/extras/validators.py:134
#, python-brace-format
@@ -9837,7 +9850,7 @@ msgstr "З шаблону"
#: netbox/ipam/forms/model_forms.py:743
msgid "Custom"
-msgstr "Користувальницький"
+msgstr "Користувацький"
#: netbox/ipam/forms/model_forms.py:773
msgid ""
@@ -10436,7 +10449,7 @@ msgstr "Діапазони повинні бути вказані в формі
msgid "Range boundaries must be defined as integers."
msgstr "Межі діапазону повинні бути визначені як цілі числа."
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} повинен реалізувати get_view_name()"
@@ -10648,11 +10661,11 @@ msgstr "Максимальний розмір сторінки"
#: netbox/netbox/config/parameters.py:150
#: netbox/templates/core/inc/config_data.html:96
msgid "Custom validators"
-msgstr "Користувальницькі перевіряючі"
+msgstr "Користувацькі перевіряючі"
#: netbox/netbox/config/parameters.py:152
msgid "Custom validation rules (JSON)"
-msgstr "Користувальницькі правила перевірки (у форматі JSON)"
+msgstr "Користувацькі правила перевірки (у форматі JSON)"
#: netbox/netbox/config/parameters.py:160
#: netbox/templates/core/inc/config_data.html:104
@@ -10777,43 +10790,43 @@ msgstr "Невідоме ім'я поля '{name}' у призначених д
#: netbox/netbox/models/features.py:286
#, python-brace-format
msgid "Invalid value for custom field '{name}': {error}"
-msgstr "Невірне значення для користувальницького поля '{name}': {error}"
+msgstr "Невірне значення для користувацького поля '{name}': {error}"
#: netbox/netbox/models/features.py:295
#, python-brace-format
msgid "Custom field '{name}' must have a unique value."
-msgstr "Користувальницьке поле '{name}' має мати унікальне значення."
+msgstr "Користувацьке поле '{name}' має мати унікальне значення."
#: netbox/netbox/models/features.py:302
#, python-brace-format
msgid "Missing required custom field '{name}'."
-msgstr "Відсутнє обов'язкове користувальницьке поле '{name}'."
+msgstr "Відсутнє обов'язкове користувацьке поле '{name}'."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "Віддалене джерело даних"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "шлях даних"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "Шляху до віддаленого файлу (відносно кореня джерела даних)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "увімкнено автоматичну синхронізацію"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr "Увімкнути автоматичну синхронізацію даних при оновленні файлу даних"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "дата синхронізована"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name} повинен реалізувати метод sync_data ()."
@@ -11061,15 +11074,15 @@ msgstr "Налаштування"
#: netbox/templates/ipam/ipaddress_bulk_add.html:35
#: netbox/templates/ipam/vlan_edit.html:59
msgid "Custom Fields"
-msgstr "Користувальницькі поля"
+msgstr "Користувацькі поля"
#: netbox/netbox/navigation/menu.py:326
msgid "Custom Field Choices"
-msgstr "Вибір користувальницьких полів"
+msgstr "Вибір користувацьких полів"
#: netbox/netbox/navigation/menu.py:327
msgid "Custom Links"
-msgstr "Користувальницькі посилання"
+msgstr "Користувацькі посилання"
#: netbox/netbox/navigation/menu.py:328
msgid "Export Templates"
@@ -12553,7 +12566,7 @@ msgid "Parent Bay"
msgstr "Батьківська бухта"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "Відновити слимака"
@@ -12898,17 +12911,17 @@ msgstr "Максимальна вага"
msgid "Total Weight"
msgstr "Загальна вага"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "Зображення та етикетки"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "Лише зображення"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "Тільки етикетки"
@@ -14784,7 +14797,7 @@ msgstr "Користувач з цим ім'ям користувача вже
#: netbox/users/tables.py:98
msgid "Custom Actions"
-msgstr "Користувальницькі дії"
+msgstr "Користувацькі дії"
#: netbox/utilities/api.py:153
#, python-brace-format
@@ -15187,15 +15200,15 @@ msgstr "Відписатися"
msgid "Subscribe"
msgstr "Підписатися"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "Копіювати в буфер обміну"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "Це поле обов'язкове для заповнення"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "Встановити нуль"
diff --git a/netbox/translations/zh/LC_MESSAGES/django.mo b/netbox/translations/zh/LC_MESSAGES/django.mo
index 74fec4f74..614b4d487 100644
Binary files a/netbox/translations/zh/LC_MESSAGES/django.mo and b/netbox/translations/zh/LC_MESSAGES/django.mo differ
diff --git a/netbox/translations/zh/LC_MESSAGES/django.po b/netbox/translations/zh/LC_MESSAGES/django.po
index ad19ef97c..784313a74 100644
--- a/netbox/translations/zh/LC_MESSAGES/django.po
+++ b/netbox/translations/zh/LC_MESSAGES/django.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-09-12 05:02+0000\n"
+"POT-Creation-Date: 2024-09-25 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: Jeremy Stretch, 2024\n"
"Language-Team: Chinese (https://app.transifex.com/netbox-community/teams/178115/zh/)\n"
@@ -96,8 +96,8 @@ msgstr "您的密码已成功更改。"
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:185
-#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1518
-#: netbox/dcim/choices.py:1594 netbox/dcim/choices.py:1644
+#: netbox/dcim/choices.py:231 netbox/dcim/choices.py:1522
+#: netbox/dcim/choices.py:1598 netbox/dcim/choices.py:1648
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -110,7 +110,7 @@ msgstr "置备"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:184 netbox/dcim/choices.py:230
-#: netbox/dcim/choices.py:1593 netbox/dcim/choices.py:1643
+#: netbox/dcim/choices.py:1597 netbox/dcim/choices.py:1647
#: netbox/extras/tables/tables.py:495 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -121,8 +121,8 @@ msgid "Active"
msgstr "在线"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:183
-#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1592
-#: netbox/dcim/choices.py:1645 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:229 netbox/dcim/choices.py:1596
+#: netbox/dcim/choices.py:1649 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "离线"
@@ -135,7 +135,7 @@ msgstr "预留"
msgid "Decommissioned"
msgstr "退役"
-#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1605
+#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:1609
#: netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "主要联系人"
@@ -341,7 +341,7 @@ msgstr "接入点A (ID)"
#: netbox/extras/filtersets.py:348 netbox/extras/filtersets.py:391
#: netbox/extras/filtersets.py:438 netbox/extras/filtersets.py:498
#: netbox/extras/filtersets.py:657 netbox/extras/filtersets.py:703
-#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:277
+#: netbox/ipam/forms/model_forms.py:449 netbox/netbox/filtersets.py:280
#: netbox/netbox/forms/__init__.py:22 netbox/netbox/forms/base.py:167
#: netbox/templates/htmx/object_selector.html:28
#: netbox/templates/inc/filter_list.html:45
@@ -579,8 +579,8 @@ msgstr "服务ID"
#: netbox/dcim/forms/bulk_edit.py:1173 netbox/dcim/forms/bulk_edit.py:1200
#: netbox/dcim/forms/bulk_edit.py:1678 netbox/dcim/forms/filtersets.py:1064
#: netbox/dcim/forms/filtersets.py:1455 netbox/dcim/forms/filtersets.py:1479
-#: netbox/dcim/tables/devices.py:700 netbox/dcim/tables/devices.py:757
-#: netbox/dcim/tables/devices.py:999 netbox/dcim/tables/devicetypes.py:250
+#: netbox/dcim/tables/devices.py:701 netbox/dcim/tables/devices.py:758
+#: netbox/dcim/tables/devices.py:1000 netbox/dcim/tables/devicetypes.py:250
#: netbox/dcim/tables/devicetypes.py:265 netbox/dcim/tables/racks.py:33
#: netbox/extras/forms/bulk_edit.py:270 netbox/extras/tables/tables.py:443
#: netbox/templates/circuits/circuittype.html:30
@@ -617,7 +617,7 @@ msgstr "颜色"
#: netbox/dcim/forms/object_import.py:84
#: netbox/dcim/forms/object_import.py:113
#: netbox/dcim/forms/object_import.py:145 netbox/dcim/tables/devices.py:178
-#: netbox/dcim/tables/devices.py:810 netbox/dcim/tables/power.py:77
+#: netbox/dcim/tables/devices.py:811 netbox/dcim/tables/power.py:77
#: netbox/dcim/tables/racks.py:138 netbox/extras/forms/bulk_import.py:42
#: netbox/extras/tables/tables.py:405 netbox/extras/tables/tables.py:465
#: netbox/netbox/tables/tables.py:240
@@ -674,8 +674,8 @@ msgstr "运营商账户"
#: netbox/dcim/forms/filtersets.py:359 netbox/dcim/forms/filtersets.py:799
#: netbox/dcim/forms/filtersets.py:924 netbox/dcim/forms/filtersets.py:958
#: netbox/dcim/forms/filtersets.py:1059 netbox/dcim/forms/filtersets.py:1170
-#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:813
-#: netbox/dcim/tables/devices.py:1059 netbox/dcim/tables/modules.py:69
+#: netbox/dcim/tables/devices.py:140 netbox/dcim/tables/devices.py:814
+#: netbox/dcim/tables/devices.py:1060 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:126
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:138
#: netbox/ipam/forms/bulk_edit.py:255 netbox/ipam/forms/bulk_edit.py:305
@@ -824,7 +824,7 @@ msgstr "服务参数"
#: netbox/circuits/forms/model_forms.py:183
#: netbox/dcim/forms/model_forms.py:139 netbox/dcim/forms/model_forms.py:181
#: netbox/dcim/forms/model_forms.py:266 netbox/dcim/forms/model_forms.py:323
-#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1691
+#: netbox/dcim/forms/model_forms.py:768 netbox/dcim/forms/model_forms.py:1692
#: netbox/ipam/forms/model_forms.py:64 netbox/ipam/forms/model_forms.py:81
#: netbox/ipam/forms/model_forms.py:115 netbox/ipam/forms/model_forms.py:136
#: netbox/ipam/forms/model_forms.py:160 netbox/ipam/forms/model_forms.py:232
@@ -1403,11 +1403,11 @@ msgstr "运营商网络"
#: netbox/dcim/tables/devices.py:134 netbox/dcim/tables/devices.py:289
#: netbox/dcim/tables/devices.py:392 netbox/dcim/tables/devices.py:433
#: netbox/dcim/tables/devices.py:482 netbox/dcim/tables/devices.py:531
-#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:727
-#: netbox/dcim/tables/devices.py:774 netbox/dcim/tables/devices.py:837
-#: netbox/dcim/tables/devices.py:907 netbox/dcim/tables/devices.py:970
-#: netbox/dcim/tables/devices.py:990 netbox/dcim/tables/devices.py:1019
-#: netbox/dcim/tables/devices.py:1049 netbox/dcim/tables/devicetypes.py:32
+#: netbox/dcim/tables/devices.py:645 netbox/dcim/tables/devices.py:728
+#: netbox/dcim/tables/devices.py:775 netbox/dcim/tables/devices.py:838
+#: netbox/dcim/tables/devices.py:908 netbox/dcim/tables/devices.py:971
+#: netbox/dcim/tables/devices.py:991 netbox/dcim/tables/devices.py:1020
+#: netbox/dcim/tables/devices.py:1050 netbox/dcim/tables/devicetypes.py:32
#: netbox/dcim/tables/power.py:22 netbox/dcim/tables/power.py:62
#: netbox/dcim/tables/racks.py:24 netbox/dcim/tables/racks.py:113
#: netbox/dcim/tables/sites.py:24 netbox/dcim/tables/sites.py:51
@@ -1545,7 +1545,7 @@ msgstr "承诺速率"
#: netbox/circuits/tables/circuits.py:80
#: netbox/circuits/tables/providers.py:48
#: netbox/circuits/tables/providers.py:82
-#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1032
+#: netbox/circuits/tables/providers.py:107 netbox/dcim/tables/devices.py:1033
#: netbox/dcim/tables/devicetypes.py:93 netbox/dcim/tables/modules.py:29
#: netbox/dcim/tables/modules.py:72 netbox/dcim/tables/power.py:39
#: netbox/dcim/tables/power.py:96 netbox/dcim/tables/racks.py:84
@@ -1624,7 +1624,7 @@ msgstr "完成"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:187 netbox/dcim/choices.py:233
-#: netbox/dcim/choices.py:1595 netbox/virtualization/choices.py:47
+#: netbox/dcim/choices.py:1599 netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "故障"
@@ -1948,7 +1948,7 @@ msgstr "必须上传文件或选择数据文件进行同步"
msgid "Rack Elevations"
msgstr "机柜立面图"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1506
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1510
#: netbox/dcim/forms/bulk_edit.py:969 netbox/dcim/forms/bulk_edit.py:1357
#: netbox/dcim/forms/bulk_edit.py:1375 netbox/dcim/tables/racks.py:158
#: netbox/netbox/navigation/menu.py:291 netbox/netbox/navigation/menu.py:295
@@ -2518,7 +2518,7 @@ msgid "Staging"
msgstr "暂存"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:189
-#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1519
+#: netbox/dcim/choices.py:234 netbox/dcim/choices.py:1523
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "报废"
@@ -2582,7 +2582,7 @@ msgstr "已弃用"
msgid "Millimeters"
msgstr "毫米"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1541
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1545
msgid "Inches"
msgstr "英寸"
@@ -2604,9 +2604,9 @@ msgstr "从后向前"
#: netbox/dcim/forms/bulk_import.py:1088 netbox/dcim/forms/filtersets.py:234
#: netbox/dcim/forms/model_forms.py:74 netbox/dcim/forms/model_forms.py:93
#: netbox/dcim/forms/model_forms.py:170 netbox/dcim/forms/model_forms.py:1062
-#: netbox/dcim/forms/model_forms.py:1501
+#: netbox/dcim/forms/model_forms.py:1502
#: netbox/dcim/forms/object_import.py:176 netbox/dcim/tables/devices.py:653
-#: netbox/dcim/tables/devices.py:865 netbox/dcim/tables/devices.py:950
+#: netbox/dcim/tables/devices.py:866 netbox/dcim/tables/devices.py:951
#: netbox/extras/tables/tables.py:223 netbox/ipam/tables/fhrp.py:59
#: netbox/ipam/tables/ip.py:378 netbox/ipam/tables/services.py:44
#: netbox/templates/dcim/interface.html:102
@@ -2636,15 +2636,15 @@ msgstr "上级"
msgid "Child"
msgstr "子类"
-#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:339
-#: netbox/templates/dcim/rack.html:129
+#: netbox/dcim/choices.py:166 netbox/templates/dcim/device.html:340
+#: netbox/templates/dcim/rack.html:133
#: netbox/templates/dcim/rack_elevation_list.html:20
#: netbox/templates/dcim/rackreservation.html:76
msgid "Front"
msgstr "前"
-#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:345
-#: netbox/templates/dcim/rack.html:135
+#: netbox/dcim/choices.py:167 netbox/templates/dcim/device.html:346
+#: netbox/templates/dcim/rack.html:139
#: netbox/templates/dcim/rack_elevation_list.html:21
#: netbox/templates/dcim/rackreservation.html:82
msgid "Rear"
@@ -2672,7 +2672,7 @@ msgid "Side to rear"
msgstr "侧进风后出风"
#: netbox/dcim/choices.py:209 netbox/dcim/choices.py:253
-#: netbox/dcim/choices.py:1291
+#: netbox/dcim/choices.py:1295
msgid "Passive"
msgstr "被动"
@@ -2680,15 +2680,15 @@ msgstr "被动"
msgid "Mixed"
msgstr "混合风道"
-#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:726
+#: netbox/dcim/choices.py:478 netbox/dcim/choices.py:727
msgid "NEMA (Non-locking)"
msgstr "NEMA(非锁定)"
-#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:748
+#: netbox/dcim/choices.py:500 netbox/dcim/choices.py:749
msgid "NEMA (Locking)"
msgstr "NEMA(锁定)"
-#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:772
+#: netbox/dcim/choices.py:524 netbox/dcim/choices.py:773
msgid "California Style"
msgstr "美标"
@@ -2696,42 +2696,42 @@ msgstr "美标"
msgid "International/ITA"
msgstr "国际通用标准/ITA"
-#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:807
+#: netbox/dcim/choices.py:567 netbox/dcim/choices.py:808
msgid "Proprietary"
msgstr "专用规格"
-#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:816
-#: netbox/dcim/choices.py:1207 netbox/dcim/choices.py:1209
-#: netbox/dcim/choices.py:1435 netbox/dcim/choices.py:1437
+#: netbox/dcim/choices.py:575 netbox/dcim/choices.py:818
+#: netbox/dcim/choices.py:1211 netbox/dcim/choices.py:1213
+#: netbox/dcim/choices.py:1439 netbox/dcim/choices.py:1441
#: netbox/netbox/navigation/menu.py:200
msgid "Other"
msgstr "其他"
-#: netbox/dcim/choices.py:780
+#: netbox/dcim/choices.py:781
msgid "ITA/International"
msgstr "ITA/国际通用标准"
-#: netbox/dcim/choices.py:846
+#: netbox/dcim/choices.py:848
msgid "Physical"
msgstr "物理"
-#: netbox/dcim/choices.py:847 netbox/dcim/choices.py:1013
+#: netbox/dcim/choices.py:849 netbox/dcim/choices.py:1016
msgid "Virtual"
msgstr "虚拟"
-#: netbox/dcim/choices.py:848 netbox/dcim/choices.py:1086
+#: netbox/dcim/choices.py:850 netbox/dcim/choices.py:1089
#: netbox/dcim/forms/bulk_edit.py:1515 netbox/dcim/forms/filtersets.py:1330
-#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1396
+#: netbox/dcim/forms/model_forms.py:988 netbox/dcim/forms/model_forms.py:1397
#: netbox/netbox/navigation/menu.py:140 netbox/netbox/navigation/menu.py:144
#: netbox/templates/dcim/interface.html:210
msgid "Wireless"
msgstr "无线"
-#: netbox/dcim/choices.py:1011
+#: netbox/dcim/choices.py:1014
msgid "Virtual interfaces"
msgstr "虚拟接口"
-#: netbox/dcim/choices.py:1014 netbox/dcim/forms/bulk_edit.py:1410
+#: netbox/dcim/choices.py:1017 netbox/dcim/forms/bulk_edit.py:1410
#: netbox/dcim/forms/bulk_import.py:840 netbox/dcim/forms/model_forms.py:974
#: netbox/dcim/tables/devices.py:657 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2741,27 +2741,27 @@ msgstr "虚拟接口"
msgid "Bridge"
msgstr "桥接"
-#: netbox/dcim/choices.py:1015
+#: netbox/dcim/choices.py:1018
msgid "Link Aggregation Group (LAG)"
msgstr "链路聚合组(LAG)"
-#: netbox/dcim/choices.py:1019
+#: netbox/dcim/choices.py:1022
msgid "Ethernet (fixed)"
msgstr "以太网(固定类型)"
-#: netbox/dcim/choices.py:1034
+#: netbox/dcim/choices.py:1037
msgid "Ethernet (modular)"
msgstr "以太网(模块)"
-#: netbox/dcim/choices.py:1070
+#: netbox/dcim/choices.py:1073
msgid "Ethernet (backplane)"
msgstr "以太网(背板)"
-#: netbox/dcim/choices.py:1101
+#: netbox/dcim/choices.py:1105
msgid "Cellular"
msgstr "蜂窝网络"
-#: netbox/dcim/choices.py:1153 netbox/dcim/forms/filtersets.py:383
+#: netbox/dcim/choices.py:1157 netbox/dcim/forms/filtersets.py:383
#: netbox/dcim/forms/filtersets.py:809 netbox/dcim/forms/filtersets.py:963
#: netbox/dcim/forms/filtersets.py:1542
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2769,129 +2769,130 @@ msgstr "蜂窝网络"
msgid "Serial"
msgstr "串口"
-#: netbox/dcim/choices.py:1168
+#: netbox/dcim/choices.py:1172
msgid "Coaxial"
msgstr "同轴电缆接口"
-#: netbox/dcim/choices.py:1188
+#: netbox/dcim/choices.py:1192
msgid "Stacking"
msgstr "堆叠"
-#: netbox/dcim/choices.py:1238
+#: netbox/dcim/choices.py:1242
msgid "Half"
msgstr "半双工"
-#: netbox/dcim/choices.py:1239
+#: netbox/dcim/choices.py:1243
msgid "Full"
msgstr "全双工"
-#: netbox/dcim/choices.py:1240 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1244 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "自动"
-#: netbox/dcim/choices.py:1251
+#: netbox/dcim/choices.py:1255
msgid "Access"
msgstr "接入"
-#: netbox/dcim/choices.py:1252 netbox/ipam/tables/vlans.py:172
+#: netbox/dcim/choices.py:1256 netbox/ipam/tables/vlans.py:172
#: netbox/ipam/tables/vlans.py:217
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Trunk口"
-#: netbox/dcim/choices.py:1253
+#: netbox/dcim/choices.py:1257
msgid "Tagged (All)"
msgstr "Trunk口(允许所有VLAN)"
-#: netbox/dcim/choices.py:1282
+#: netbox/dcim/choices.py:1286
msgid "IEEE Standard"
msgstr "IEEE标准"
-#: netbox/dcim/choices.py:1293
+#: netbox/dcim/choices.py:1297
msgid "Passive 24V (2-pair)"
msgstr "24V(2对供电)"
-#: netbox/dcim/choices.py:1294
+#: netbox/dcim/choices.py:1298
msgid "Passive 24V (4-pair)"
msgstr "24V(4对供电)"
-#: netbox/dcim/choices.py:1295
+#: netbox/dcim/choices.py:1299
msgid "Passive 48V (2-pair)"
msgstr "48V(2对供电)"
-#: netbox/dcim/choices.py:1296
+#: netbox/dcim/choices.py:1300
msgid "Passive 48V (4-pair)"
msgstr "48V(4对供电)"
-#: netbox/dcim/choices.py:1366 netbox/dcim/choices.py:1476
+#: netbox/dcim/choices.py:1370 netbox/dcim/choices.py:1480
msgid "Copper"
msgstr "铜缆"
-#: netbox/dcim/choices.py:1389
+#: netbox/dcim/choices.py:1393
msgid "Fiber Optic"
msgstr "光纤"
-#: netbox/dcim/choices.py:1422 netbox/dcim/choices.py:1505
+#: netbox/dcim/choices.py:1426 netbox/dcim/choices.py:1509
msgid "USB"
msgstr "USB"
-#: netbox/dcim/choices.py:1492
+#: netbox/dcim/choices.py:1496
msgid "Fiber"
msgstr "光纤"
-#: netbox/dcim/choices.py:1517 netbox/dcim/forms/filtersets.py:1227
+#: netbox/dcim/choices.py:1521 netbox/dcim/forms/filtersets.py:1227
msgid "Connected"
msgstr "已连接"
-#: netbox/dcim/choices.py:1536 netbox/wireless/choices.py:497
+#: netbox/dcim/choices.py:1540 netbox/wireless/choices.py:497
msgid "Kilometers"
msgstr "公里"
-#: netbox/dcim/choices.py:1537 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1541 netbox/templates/dcim/cable_trace.html:65
#: netbox/wireless/choices.py:498
msgid "Meters"
msgstr "米"
-#: netbox/dcim/choices.py:1538
+#: netbox/dcim/choices.py:1542
msgid "Centimeters"
msgstr "厘米"
-#: netbox/dcim/choices.py:1539 netbox/wireless/choices.py:499
+#: netbox/dcim/choices.py:1543 netbox/wireless/choices.py:499
msgid "Miles"
msgstr "英里"
-#: netbox/dcim/choices.py:1540 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1544 netbox/templates/dcim/cable_trace.html:66
#: netbox/wireless/choices.py:500
msgid "Feet"
msgstr "英尺"
-#: netbox/dcim/choices.py:1556 netbox/templates/dcim/device.html:327
-#: netbox/templates/dcim/rack.html:106
+#: netbox/dcim/choices.py:1560 netbox/templates/dcim/device.html:327
+#: netbox/templates/dcim/rack.html:107
msgid "Kilograms"
msgstr "千克"
-#: netbox/dcim/choices.py:1557
+#: netbox/dcim/choices.py:1561
msgid "Grams"
msgstr "克"
-#: netbox/dcim/choices.py:1558 netbox/templates/dcim/rack.html:107
+#: netbox/dcim/choices.py:1562 netbox/templates/dcim/device.html:328
+#: netbox/templates/dcim/rack.html:108
msgid "Pounds"
msgstr "磅"
-#: netbox/dcim/choices.py:1559
+#: netbox/dcim/choices.py:1563
msgid "Ounces"
msgstr "盎司"
-#: netbox/dcim/choices.py:1606
+#: netbox/dcim/choices.py:1610
msgid "Redundant"
msgstr "冗余"
-#: netbox/dcim/choices.py:1627
+#: netbox/dcim/choices.py:1631
msgid "Single phase"
msgstr "单相电"
-#: netbox/dcim/choices.py:1628
+#: netbox/dcim/choices.py:1632
msgid "Three-phase"
msgstr "三相"
@@ -3261,7 +3262,7 @@ msgstr "指定VID"
#: netbox/dcim/filtersets.py:1613 netbox/dcim/forms/bulk_edit.py:1489
#: netbox/dcim/forms/bulk_import.py:891 netbox/dcim/forms/filtersets.py:1428
-#: netbox/dcim/forms/model_forms.py:1377
+#: netbox/dcim/forms/model_forms.py:1378
#: netbox/dcim/models/device_components.py:712
#: netbox/dcim/tables/devices.py:623 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
@@ -3340,7 +3341,7 @@ msgid "LAG interface (ID)"
msgstr "链路聚合接口(ID)"
#: netbox/dcim/filtersets.py:1713 netbox/dcim/filtersets.py:1725
-#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1689
+#: netbox/dcim/forms/filtersets.py:1345 netbox/dcim/forms/model_forms.py:1690
#: netbox/templates/dcim/virtualdevicecontext.html:15
msgid "Virtual Device Context"
msgstr "虚拟设备上下文"
@@ -3415,7 +3416,7 @@ msgstr "标签"
#: netbox/dcim/forms/model_forms.py:488 netbox/dcim/forms/model_forms.py:546
#: netbox/dcim/forms/object_create.py:197
#: netbox/dcim/forms/object_create.py:353 netbox/dcim/tables/devices.py:165
-#: netbox/dcim/tables/devices.py:703 netbox/dcim/tables/devicetypes.py:247
+#: netbox/dcim/tables/devices.py:704 netbox/dcim/tables/devicetypes.py:247
#: netbox/templates/dcim/device.html:43 netbox/templates/dcim/device.html:131
#: netbox/templates/dcim/modulebay.html:38
#: netbox/templates/dcim/virtualchassis.html:66
@@ -3460,9 +3461,9 @@ msgstr "时区"
#: netbox/dcim/forms/model_forms.py:207 netbox/dcim/forms/model_forms.py:337
#: netbox/dcim/forms/model_forms.py:349 netbox/dcim/forms/model_forms.py:395
#: netbox/dcim/forms/model_forms.py:436 netbox/dcim/forms/model_forms.py:1075
-#: netbox/dcim/forms/model_forms.py:1514
+#: netbox/dcim/forms/model_forms.py:1515
#: netbox/dcim/forms/object_import.py:187 netbox/dcim/tables/devices.py:96
-#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:936
+#: netbox/dcim/tables/devices.py:172 netbox/dcim/tables/devices.py:937
#: netbox/dcim/tables/devicetypes.py:81 netbox/dcim/tables/devicetypes.py:309
#: netbox/dcim/tables/modules.py:20 netbox/dcim/tables/modules.py:60
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:132
@@ -3586,9 +3587,9 @@ msgstr "编号"
#: netbox/dcim/forms/bulk_import.py:1076 netbox/dcim/forms/filtersets.py:367
#: netbox/dcim/forms/filtersets.py:777 netbox/dcim/forms/filtersets.py:1534
#: netbox/dcim/forms/model_forms.py:251 netbox/dcim/forms/model_forms.py:1070
-#: netbox/dcim/forms/model_forms.py:1509
+#: netbox/dcim/forms/model_forms.py:1510
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
-#: netbox/dcim/tables/devices.py:805 netbox/dcim/tables/devices.py:933
+#: netbox/dcim/tables/devices.py:806 netbox/dcim/tables/devices.py:934
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:129
#: netbox/extras/filtersets.py:552 netbox/ipam/forms/bulk_edit.py:260
#: netbox/ipam/forms/bulk_edit.py:310 netbox/ipam/forms/bulk_edit.py:358
@@ -3678,7 +3679,7 @@ msgstr "机柜"
#: netbox/dcim/forms/filtersets.py:325 netbox/dcim/forms/filtersets.py:398
#: netbox/dcim/forms/filtersets.py:481 netbox/dcim/forms/filtersets.py:608
#: netbox/dcim/forms/filtersets.py:721 netbox/dcim/forms/filtersets.py:942
-#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1579
+#: netbox/dcim/forms/model_forms.py:670 netbox/dcim/forms/model_forms.py:1580
#: netbox/templates/dcim/device_edit.html:20
msgid "Hardware"
msgstr "硬件"
@@ -3786,15 +3787,15 @@ msgstr "平台"
#: netbox/dcim/forms/filtersets.py:1592 netbox/dcim/forms/filtersets.py:1616
#: netbox/dcim/forms/filtersets.py:1640 netbox/dcim/forms/model_forms.py:633
#: netbox/dcim/forms/model_forms.py:849 netbox/dcim/forms/model_forms.py:1208
-#: netbox/dcim/forms/model_forms.py:1663
+#: netbox/dcim/forms/model_forms.py:1664
#: netbox/dcim/forms/object_create.py:257 netbox/dcim/tables/connections.py:22
#: netbox/dcim/tables/connections.py:41 netbox/dcim/tables/connections.py:60
#: netbox/dcim/tables/devices.py:285 netbox/dcim/tables/devices.py:371
#: netbox/dcim/tables/devices.py:412 netbox/dcim/tables/devices.py:454
#: netbox/dcim/tables/devices.py:505 netbox/dcim/tables/devices.py:594
-#: netbox/dcim/tables/devices.py:693 netbox/dcim/tables/devices.py:750
-#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:857
-#: netbox/dcim/tables/devices.py:926 netbox/dcim/tables/devices.py:1053
+#: netbox/dcim/tables/devices.py:694 netbox/dcim/tables/devices.py:751
+#: netbox/dcim/tables/devices.py:798 netbox/dcim/tables/devices.py:858
+#: netbox/dcim/tables/devices.py:927 netbox/dcim/tables/devices.py:1054
#: netbox/dcim/tables/modules.py:52 netbox/extras/forms/filtersets.py:321
#: netbox/ipam/forms/bulk_import.py:304 netbox/ipam/forms/bulk_import.py:481
#: netbox/ipam/forms/filtersets.py:551 netbox/ipam/forms/model_forms.py:319
@@ -3938,7 +3939,7 @@ msgstr "分配功率(瓦)"
#: netbox/dcim/forms/bulk_edit.py:1078 netbox/dcim/forms/bulk_import.py:786
#: netbox/dcim/forms/model_forms.py:953 netbox/dcim/forms/model_forms.py:1278
-#: netbox/dcim/forms/model_forms.py:1566 netbox/dcim/forms/object_import.py:55
+#: netbox/dcim/forms/model_forms.py:1567 netbox/dcim/forms/object_import.py:55
msgid "Power port"
msgstr "电源接口"
@@ -4026,14 +4027,14 @@ msgstr "模式"
msgid "VLAN group"
msgstr "VLAN 组"
-#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1359
+#: netbox/dcim/forms/bulk_edit.py:1476 netbox/dcim/forms/model_forms.py:1360
#: netbox/dcim/tables/devices.py:579
#: netbox/virtualization/forms/bulk_edit.py:248
#: netbox/virtualization/forms/model_forms.py:326
msgid "Untagged VLAN"
msgstr "未标记的VLAN"
-#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1368
+#: netbox/dcim/forms/bulk_edit.py:1484 netbox/dcim/forms/model_forms.py:1369
#: netbox/dcim/tables/devices.py:585
#: netbox/virtualization/forms/bulk_edit.py:256
#: netbox/virtualization/forms/model_forms.py:335
@@ -4052,7 +4053,7 @@ msgid "Wireless LANs"
msgstr "无线局域网"
#: netbox/dcim/forms/bulk_edit.py:1508 netbox/dcim/forms/filtersets.py:1328
-#: netbox/dcim/forms/model_forms.py:1389 netbox/ipam/forms/bulk_edit.py:285
+#: netbox/dcim/forms/model_forms.py:1390 netbox/ipam/forms/bulk_edit.py:285
#: netbox/ipam/forms/bulk_edit.py:377 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
@@ -4061,24 +4062,24 @@ msgid "Addressing"
msgstr "寻址"
#: netbox/dcim/forms/bulk_edit.py:1509 netbox/dcim/forms/filtersets.py:720
-#: netbox/dcim/forms/model_forms.py:1390
+#: netbox/dcim/forms/model_forms.py:1391
#: netbox/virtualization/forms/model_forms.py:350
msgid "Operation"
msgstr "操作"
#: netbox/dcim/forms/bulk_edit.py:1510 netbox/dcim/forms/filtersets.py:1329
-#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1392
+#: netbox/dcim/forms/model_forms.py:987 netbox/dcim/forms/model_forms.py:1393
msgid "PoE"
msgstr "PoE"
-#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1391
+#: netbox/dcim/forms/bulk_edit.py:1511 netbox/dcim/forms/model_forms.py:1392
#: netbox/templates/dcim/interface.html:99
#: netbox/virtualization/forms/bulk_edit.py:267
#: netbox/virtualization/forms/model_forms.py:351
msgid "Related Interfaces"
msgstr "相关接口"
-#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1393
+#: netbox/dcim/forms/bulk_edit.py:1512 netbox/dcim/forms/model_forms.py:1394
#: netbox/virtualization/forms/bulk_edit.py:268
#: netbox/virtualization/forms/model_forms.py:352
msgid "802.1Q Switching"
@@ -4413,7 +4414,7 @@ msgid "VDC {vdc} is not assigned to device {device}"
msgstr "VDC {vdc} 没有指定给设备 {device}"
#: netbox/dcim/forms/bulk_import.py:951 netbox/dcim/forms/model_forms.py:1000
-#: netbox/dcim/forms/model_forms.py:1574
+#: netbox/dcim/forms/model_forms.py:1575
#: netbox/dcim/forms/object_import.py:117
msgid "Rear port"
msgstr "后置端口"
@@ -4427,7 +4428,7 @@ msgstr "对应后置端口"
msgid "Physical medium classification"
msgstr "物理端口类型"
-#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:818
+#: netbox/dcim/forms/bulk_import.py:1028 netbox/dcim/tables/devices.py:819
msgid "Installed device"
msgstr "安装设备"
@@ -4516,7 +4517,7 @@ msgid "{side_upper} side termination not found: {device} {name}"
msgstr "{side_upper} 端接口类型未发现: {device} {name}"
#: netbox/dcim/forms/bulk_import.py:1293 netbox/dcim/forms/model_forms.py:785
-#: netbox/dcim/tables/devices.py:1023 netbox/templates/dcim/device.html:132
+#: netbox/dcim/tables/devices.py:1024 netbox/templates/dcim/device.html:132
#: netbox/templates/dcim/virtualchassis.html:27
#: netbox/templates/dcim/virtualchassis.html:67
msgid "Master"
@@ -4546,6 +4547,28 @@ msgstr "供应类型(AC/DC)"
msgid "Single or three-phase"
msgstr "单相或三相"
+#: netbox/dcim/forms/bulk_import.py:1439 netbox/dcim/forms/model_forms.py:1670
+#: netbox/templates/dcim/device.html:190
+#: netbox/templates/dcim/virtualdevicecontext.html:30
+#: netbox/templates/virtualization/virtualmachine.html:52
+msgid "Primary IPv4"
+msgstr "主 IPv4"
+
+#: netbox/dcim/forms/bulk_import.py:1443
+msgid "IPv4 address with mask, e.g. 1.2.3.4/24"
+msgstr "带掩码的 IPv4 地址,例如 1.2.3.4/24"
+
+#: netbox/dcim/forms/bulk_import.py:1446 netbox/dcim/forms/model_forms.py:1679
+#: netbox/templates/dcim/device.html:206
+#: netbox/templates/dcim/virtualdevicecontext.html:41
+#: netbox/templates/virtualization/virtualmachine.html:68
+msgid "Primary IPv6"
+msgstr "主 IPv6"
+
+#: netbox/dcim/forms/bulk_import.py:1450
+msgid "IPv6 address with prefix length, e.g. 2001:db8::1/64"
+msgstr "带有前缀长度的 IPv6 地址,例如 2001:db8:: 1/64"
+
#: netbox/dcim/forms/common.py:24 netbox/dcim/models/device_components.py:528
#: netbox/templates/dcim/interface.html:57
#: netbox/templates/virtualization/vminterface.html:55
@@ -4702,7 +4725,7 @@ msgstr "类型"
msgid "Mgmt only"
msgstr "仅用于管理"
-#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1382
+#: netbox/dcim/forms/filtersets.py:1389 netbox/dcim/forms/model_forms.py:1383
#: netbox/dcim/models/device_components.py:630
#: netbox/templates/dcim/interface.html:129
msgid "WWN"
@@ -4736,7 +4759,7 @@ msgstr "信道功率(dBm)"
msgid "Cable"
msgstr "电缆"
-#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:945
+#: netbox/dcim/forms/filtersets.py:1550 netbox/dcim/tables/devices.py:946
msgid "Discovered"
msgstr "已发现"
@@ -4830,8 +4853,8 @@ msgstr "电源接口模版"
msgid "Rear port template"
msgstr "后置接口模版"
-#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1387
-#: netbox/dcim/forms/model_forms.py:1550 netbox/dcim/forms/model_forms.py:1582
+#: netbox/dcim/forms/model_forms.py:1144 netbox/dcim/forms/model_forms.py:1388
+#: netbox/dcim/forms/model_forms.py:1551 netbox/dcim/forms/model_forms.py:1583
#: netbox/dcim/tables/connections.py:65 netbox/ipam/forms/bulk_import.py:318
#: netbox/ipam/forms/model_forms.py:280 netbox/ipam/forms/model_forms.py:289
#: netbox/ipam/tables/fhrp.py:64 netbox/ipam/tables/ip.py:372
@@ -4855,7 +4878,7 @@ msgstr "后置接口模版"
msgid "Interface"
msgstr "接口"
-#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1583
+#: netbox/dcim/forms/model_forms.py:1145 netbox/dcim/forms/model_forms.py:1584
#: netbox/dcim/tables/connections.py:27
#: netbox/templates/dcim/consoleport.html:17
#: netbox/templates/dcim/consoleserverport.html:74
@@ -4863,14 +4886,14 @@ msgstr "接口"
msgid "Console Port"
msgstr "Console 端口"
-#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1584
+#: netbox/dcim/forms/model_forms.py:1146 netbox/dcim/forms/model_forms.py:1585
#: netbox/templates/dcim/consoleport.html:73
#: netbox/templates/dcim/consoleserverport.html:17
#: netbox/templates/dcim/frontport.html:109
msgid "Console Server Port"
msgstr "Console 服务器端口"
-#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1585
+#: netbox/dcim/forms/model_forms.py:1147 netbox/dcim/forms/model_forms.py:1586
#: netbox/templates/circuits/inc/circuit_termination_fields.html:52
#: netbox/templates/dcim/consoleport.html:76
#: netbox/templates/dcim/consoleserverport.html:77
@@ -4881,8 +4904,8 @@ msgstr "Console 服务器端口"
msgid "Front Port"
msgstr "前置接口"
-#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1586
-#: netbox/dcim/tables/devices.py:706
+#: netbox/dcim/forms/model_forms.py:1148 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/tables/devices.py:707
#: netbox/templates/circuits/inc/circuit_termination_fields.html:53
#: netbox/templates/dcim/consoleport.html:79
#: netbox/templates/dcim/consoleserverport.html:80
@@ -4894,24 +4917,24 @@ msgstr "前置接口"
msgid "Rear Port"
msgstr "后置接口"
-#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1587
+#: netbox/dcim/forms/model_forms.py:1149 netbox/dcim/forms/model_forms.py:1588
#: netbox/dcim/tables/connections.py:46 netbox/dcim/tables/devices.py:512
#: netbox/templates/dcim/poweroutlet.html:44
#: netbox/templates/dcim/powerport.html:17
msgid "Power Port"
msgstr "电源接口"
-#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1588
+#: netbox/dcim/forms/model_forms.py:1150 netbox/dcim/forms/model_forms.py:1589
#: netbox/templates/dcim/poweroutlet.html:17
#: netbox/templates/dcim/powerport.html:77
msgid "Power Outlet"
msgstr "电源插座"
-#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1590
+#: netbox/dcim/forms/model_forms.py:1152 netbox/dcim/forms/model_forms.py:1591
msgid "Component Assignment"
msgstr "组件分配"
-#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1637
+#: netbox/dcim/forms/model_forms.py:1195 netbox/dcim/forms/model_forms.py:1638
msgid "An InventoryItem can only be assigned to a single component."
msgstr "库存项只能分配给单个组件"
@@ -4919,54 +4942,46 @@ msgstr "库存项只能分配给单个组件"
msgid "LAG interface"
msgstr "链路聚合接口"
-#: netbox/dcim/forms/model_forms.py:1483
+#: netbox/dcim/forms/model_forms.py:1355
+msgid "Filter VLANs available for assignment by group."
+msgstr "按组筛选可供分配的 VLAN。"
+
+#: netbox/dcim/forms/model_forms.py:1484
msgid "Child Device"
msgstr "子设备"
-#: netbox/dcim/forms/model_forms.py:1484
+#: netbox/dcim/forms/model_forms.py:1485
msgid ""
"Child devices must first be created and assigned to the site and rack of the"
" parent device."
msgstr "必须首先创建子设备,并将其分配给父设备的站点和机柜。"
-#: netbox/dcim/forms/model_forms.py:1526
+#: netbox/dcim/forms/model_forms.py:1527
msgid "Console port"
msgstr "Console 接口"
-#: netbox/dcim/forms/model_forms.py:1534
+#: netbox/dcim/forms/model_forms.py:1535
msgid "Console server port"
msgstr "Console 服务器端口"
-#: netbox/dcim/forms/model_forms.py:1542
+#: netbox/dcim/forms/model_forms.py:1543
msgid "Front port"
msgstr "前置接口"
-#: netbox/dcim/forms/model_forms.py:1558
+#: netbox/dcim/forms/model_forms.py:1559
msgid "Power outlet"
msgstr "电源插座"
-#: netbox/dcim/forms/model_forms.py:1578
+#: netbox/dcim/forms/model_forms.py:1579
#: netbox/templates/dcim/inventoryitem.html:17
msgid "Inventory Item"
msgstr "库存项"
-#: netbox/dcim/forms/model_forms.py:1651
+#: netbox/dcim/forms/model_forms.py:1652
#: netbox/templates/dcim/inventoryitemrole.html:15
msgid "Inventory Item Role"
msgstr "库存物品分类"
-#: netbox/dcim/forms/model_forms.py:1669 netbox/templates/dcim/device.html:190
-#: netbox/templates/dcim/virtualdevicecontext.html:30
-#: netbox/templates/virtualization/virtualmachine.html:52
-msgid "Primary IPv4"
-msgstr "主 IPv4"
-
-#: netbox/dcim/forms/model_forms.py:1678 netbox/templates/dcim/device.html:206
-#: netbox/templates/dcim/virtualdevicecontext.html:41
-#: netbox/templates/virtualization/virtualmachine.html:68
-msgid "Primary IPv6"
-msgstr "主 IPv6"
-
#: netbox/dcim/forms/object_create.py:48
#: netbox/dcim/forms/object_create.py:199
#: netbox/dcim/forms/object_create.py:355
@@ -5013,7 +5028,7 @@ msgid ""
"selected number of rear port positions ({rearport_count})."
msgstr "要创建的前置端口数 ({frontport_count}) 必须与所选的后置端口数({rearport_count})匹配。"
-#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1029
+#: netbox/dcim/forms/object_create.py:409 netbox/dcim/tables/devices.py:1030
#: netbox/ipam/tables/fhrp.py:31 netbox/templates/dcim/virtualchassis.html:53
#: netbox/templates/dcim/virtualchassis_edit.html:47
#: netbox/templates/ipam/fhrpgroup.html:38
@@ -6528,7 +6543,7 @@ msgstr "配置模版"
msgid "Site Group"
msgstr "站点组"
-#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1064
+#: netbox/dcim/tables/devices.py:187 netbox/dcim/tables/devices.py:1065
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/model_forms.py:306
#: netbox/ipam/forms/model_forms.py:315 netbox/ipam/tables/ip.py:356
#: netbox/ipam/tables/ip.py:423 netbox/ipam/tables/ip.py:446
@@ -6537,12 +6552,12 @@ msgstr "站点组"
msgid "IP Address"
msgstr "IP地址"
-#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1068
+#: netbox/dcim/tables/devices.py:191 netbox/dcim/tables/devices.py:1069
#: netbox/virtualization/tables/virtualmachines.py:86
msgid "IPv4 Address"
msgstr "IPv4 地址"
-#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1072
+#: netbox/dcim/tables/devices.py:195 netbox/dcim/tables/devices.py:1073
#: netbox/virtualization/tables/virtualmachines.py:90
msgid "IPv6 Address"
msgstr "IPv6 地址"
@@ -6580,7 +6595,7 @@ msgstr "电源接口"
msgid "Power outlets"
msgstr "电源插座"
-#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1077
+#: netbox/dcim/tables/devices.py:246 netbox/dcim/tables/devices.py:1078
#: netbox/dcim/tables/devicetypes.py:129 netbox/dcim/views.py:1042
#: netbox/dcim/views.py:1281 netbox/dcim/views.py:1977
#: netbox/netbox/navigation/menu.py:94 netbox/netbox/navigation/menu.py:250
@@ -6687,28 +6702,28 @@ msgstr "仅限管理"
msgid "VDCs"
msgstr "VDCs"
-#: netbox/dcim/tables/devices.py:869 netbox/templates/dcim/modulebay.html:53
+#: netbox/dcim/tables/devices.py:870 netbox/templates/dcim/modulebay.html:53
msgid "Installed Module"
msgstr "已安装的模块"
-#: netbox/dcim/tables/devices.py:872
+#: netbox/dcim/tables/devices.py:873
msgid "Module Serial"
msgstr "模块状态"
-#: netbox/dcim/tables/devices.py:876
+#: netbox/dcim/tables/devices.py:877
msgid "Module Asset Tag"
msgstr "模块资产标签"
-#: netbox/dcim/tables/devices.py:885
+#: netbox/dcim/tables/devices.py:886
msgid "Module Status"
msgstr "模块状态"
-#: netbox/dcim/tables/devices.py:940 netbox/dcim/tables/devicetypes.py:313
+#: netbox/dcim/tables/devices.py:941 netbox/dcim/tables/devicetypes.py:313
#: netbox/templates/dcim/inventoryitem.html:40
msgid "Component"
msgstr "组件"
-#: netbox/dcim/tables/devices.py:996
+#: netbox/dcim/tables/devices.py:997
msgid "Items"
msgstr "项目"
@@ -10201,7 +10216,7 @@ msgstr "必须以表单(下限、上限)指定范围。"
msgid "Range boundaries must be defined as integers."
msgstr "范围边界必须定义为整数。"
-#: netbox/netbox/api/serializers/fields.py:39
+#: netbox/netbox/api/serializers/fields.py:40
#, python-brace-format
msgid "{class_name} must implement get_view_name()"
msgstr "{class_name} 必须实现 get_view_name ()"
@@ -10548,31 +10563,31 @@ msgstr "自定义字段 '{name}'必须具有唯一值。"
msgid "Missing required custom field '{name}'."
msgstr "缺少必需的自定义字段'{name}'."
-#: netbox/netbox/models/features.py:467
+#: netbox/netbox/models/features.py:462
msgid "Remote data source"
msgstr "远程数据源"
-#: netbox/netbox/models/features.py:477
+#: netbox/netbox/models/features.py:472
msgid "data path"
msgstr "文件路径"
-#: netbox/netbox/models/features.py:481
+#: netbox/netbox/models/features.py:476
msgid "Path to remote file (relative to data source root)"
msgstr "数据源文件路径(相对路径)"
-#: netbox/netbox/models/features.py:484
+#: netbox/netbox/models/features.py:479
msgid "auto sync enabled"
msgstr "自动同步已启用"
-#: netbox/netbox/models/features.py:486
+#: netbox/netbox/models/features.py:481
msgid "Enable automatic synchronization of data when the data file is updated"
msgstr "数据文件更新时启用数据自动同步"
-#: netbox/netbox/models/features.py:489
+#: netbox/netbox/models/features.py:484
msgid "date synced"
msgstr "数据已同步"
-#: netbox/netbox/models/features.py:583
+#: netbox/netbox/models/features.py:578
#, python-brace-format
msgid "{class_name} must implement a sync_data() method."
msgstr "{class_name}必须包含sync_data()方法。"
@@ -12299,7 +12314,7 @@ msgid "Parent Bay"
msgstr "父托架"
#: netbox/templates/dcim/device_edit.html:48
-#: netbox/utilities/templates/form_helpers/render_field.html:20
+#: netbox/utilities/templates/form_helpers/render_field.html:22
msgid "Regenerate Slug"
msgstr "重新生成缩写"
@@ -12642,17 +12657,17 @@ msgstr "最大承重"
msgid "Total Weight"
msgstr "总重量"
-#: netbox/templates/dcim/rack.html:121
+#: netbox/templates/dcim/rack.html:125
#: netbox/templates/dcim/rack_elevation_list.html:15
msgid "Images and Labels"
msgstr "图片和标签"
-#: netbox/templates/dcim/rack.html:122
+#: netbox/templates/dcim/rack.html:126
#: netbox/templates/dcim/rack_elevation_list.html:16
msgid "Images only"
msgstr "仅图像"
-#: netbox/templates/dcim/rack.html:123
+#: netbox/templates/dcim/rack.html:127
#: netbox/templates/dcim/rack_elevation_list.html:17
msgid "Labels only"
msgstr "仅标签"
@@ -14839,15 +14854,15 @@ msgstr "取消订阅"
msgid "Subscribe"
msgstr "订阅"
-#: netbox/utilities/templates/form_helpers/render_field.html:39
+#: netbox/utilities/templates/form_helpers/render_field.html:41
msgid "Copy to clipboard"
msgstr "复制到剪贴板"
-#: netbox/utilities/templates/form_helpers/render_field.html:55
+#: netbox/utilities/templates/form_helpers/render_field.html:57
msgid "This field is required"
msgstr "此字段必填"
-#: netbox/utilities/templates/form_helpers/render_field.html:68
+#: netbox/utilities/templates/form_helpers/render_field.html:70
msgid "Set Null"
msgstr "设置为空"
diff --git a/netbox/users/api/nested_serializers.py b/netbox/users/api/nested_serializers.py
index 2a5763476..201e38901 100644
--- a/netbox/users/api/nested_serializers.py
+++ b/netbox/users/api/nested_serializers.py
@@ -18,7 +18,7 @@ __all__ = [
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/users/api/views.py b/netbox/users/api/views.py
index 240f68d36..bba9a4ec3 100644
--- a/netbox/users/api/views.py
+++ b/netbox/users/api/views.py
@@ -73,7 +73,7 @@ class TokenProvisionView(APIView):
def perform_create(self, serializer):
model = serializer.Meta.model
- logger = logging.getLogger(f'netbox.api.views.TokenProvisionView')
+ logger = logging.getLogger('netbox.api.views.TokenProvisionView')
logger.info(f"Creating new {model._meta.verbose_name}")
serializer.save()
diff --git a/netbox/users/apps.py b/netbox/users/apps.py
index cd61a59bc..4bfd612d9 100644
--- a/netbox/users/apps.py
+++ b/netbox/users/apps.py
@@ -6,7 +6,7 @@ class UsersConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
- from . import signals
+ from . import signals # noqa: F401
# Register models
register_models(*self.get_models())
diff --git a/netbox/users/forms/model_forms.py b/netbox/users/forms/model_forms.py
index 639b9f726..42c3b15f0 100644
--- a/netbox/users/forms/model_forms.py
+++ b/netbox/users/forms/model_forms.py
@@ -36,7 +36,6 @@ class UserConfigFormMetaclass(forms.models.ModelFormMetaclass):
# Emulate a declared field for each supported user preference
preference_fields = {}
for field_name, preference in PREFERENCES.items():
- description = f'{preference.description} ' if preference.description else ''
help_text = f'{field_name} '
if preference.description:
help_text = f'{preference.description} {help_text}'
diff --git a/netbox/users/tests/test_preferences.py b/netbox/users/tests/test_preferences.py
index b5037ec3f..13120d328 100644
--- a/netbox/users/tests/test_preferences.py
+++ b/netbox/users/tests/test_preferences.py
@@ -51,11 +51,11 @@ class UserPreferencesTest(TestCase):
# Check that table ordering preference has been recorded
self.user.refresh_from_db()
- ordering = self.user.config.get(f'tables.SiteTable.ordering')
+ ordering = self.user.config.get('tables.SiteTable.ordering')
self.assertEqual(ordering, ['status'])
# Check that a recorded preference is honored by default
- self.user.config.set(f'tables.SiteTable.ordering', ['-status'], commit=True)
+ self.user.config.set('tables.SiteTable.ordering', ['-status'], commit=True)
table = SiteTable(Site.objects.all())
request = RequestFactory().get(url)
request.user = self.user
diff --git a/netbox/users/tests/test_views.py b/netbox/users/tests/test_views.py
index 86da7dda2..8386364dd 100644
--- a/netbox/users/tests/test_views.py
+++ b/netbox/users/tests/test_views.py
@@ -1,8 +1,6 @@
-from django.test import override_settings
-
from core.models import ObjectType
from users.models import *
-from utilities.testing import ViewTestCases, create_test_user, extract_form_failures
+from utilities.testing import ViewTestCases, create_test_user
class UserTestCase(
diff --git a/netbox/utilities/constants.py b/netbox/utilities/constants.py
index c7c26f6b3..2b93f2b96 100644
--- a/netbox/utilities/constants.py
+++ b/netbox/utilities/constants.py
@@ -93,3 +93,7 @@ HTML_ALLOWED_ATTRIBUTES = {
"td": {"align"},
"th": {"align"},
}
+
+HTTP_PROXY_SUPPORTED_SOCK_SCHEMAS = ['socks4', 'socks4a', 'socks4h', 'socks5', 'socks5a', 'socks5h']
+HTTP_PROXY_SOCK_RDNS_SCHEMAS = ['socks4h', 'socks4a', 'socks5h', 'socks5a']
+HTTP_PROXY_SUPPORTED_SCHEMAS = ['http', 'https', 'socks4', 'socks4a', 'socks4h', 'socks5', 'socks5a', 'socks5h']
diff --git a/netbox/utilities/forms/fields/csv.py b/netbox/utilities/forms/fields/csv.py
index 6d7ba4d61..a2d4025cb 100644
--- a/netbox/utilities/forms/fields/csv.py
+++ b/netbox/utilities/forms/fields/csv.py
@@ -1,7 +1,7 @@
from django import forms
from django.utils.translation import gettext_lazy as _
from django.contrib.contenttypes.models import ContentType
-from django.core.exceptions import MultipleObjectsReturned, ObjectDoesNotExist
+from django.core.exceptions import MultipleObjectsReturned, ObjectDoesNotExist, FieldError
from django.db.models import Q
from utilities.choices import unpack_grouped_choices
@@ -64,6 +64,10 @@ class CSVModelChoiceField(forms.ModelChoiceField):
raise forms.ValidationError(
_('"{value}" is not a unique value for this field; multiple objects were found').format(value=value)
)
+ except FieldError:
+ raise forms.ValidationError(
+ _('"{field_name}" is an invalid accessor field name.').format(field_name=self.to_field_name)
+ )
class CSVModelMultipleChoiceField(forms.ModelMultipleChoiceField):
diff --git a/netbox/utilities/forms/fields/dynamic.py b/netbox/utilities/forms/fields/dynamic.py
index bec067ba2..6666c0e4d 100644
--- a/netbox/utilities/forms/fields/dynamic.py
+++ b/netbox/utilities/forms/fields/dynamic.py
@@ -142,7 +142,7 @@ class DynamicModelChoiceMixin:
if data:
# When the field is multiple choice pass the data as a list if it's not already
- if isinstance(bound_field.field, DynamicModelMultipleChoiceField) and not type(data) is list:
+ if isinstance(bound_field.field, DynamicModelMultipleChoiceField) and type(data) is not list:
data = [data]
field_name = getattr(self, 'to_field_name') or 'pk'
diff --git a/netbox/utilities/html.py b/netbox/utilities/html.py
index f99dabe5a..c9203d169 100644
--- a/netbox/utilities/html.py
+++ b/netbox/utilities/html.py
@@ -59,7 +59,7 @@ def highlight(value, highlight, trim_pre=None, trim_post=None, trim_placeholder=
else:
highlight = re.escape(highlight)
pre, match, post = re.split(fr'({highlight})', value, maxsplit=1, flags=re.IGNORECASE)
- except ValueError as e:
+ except ValueError:
# Match not found
return escape(value)
diff --git a/netbox/utilities/management/commands/calculate_cached_counts.py b/netbox/utilities/management/commands/calculate_cached_counts.py
index f7810604f..a0e841e23 100644
--- a/netbox/utilities/management/commands/calculate_cached_counts.py
+++ b/netbox/utilities/management/commands/calculate_cached_counts.py
@@ -1,7 +1,6 @@
from collections import defaultdict
from django.core.management.base import BaseCommand
-from django.db.models import Count, OuterRef, Subquery
from netbox.registry import registry
from utilities.counters import update_counts
diff --git a/netbox/utilities/markdown.py b/netbox/utilities/markdown.py
index 655539acb..0bf4e6a30 100644
--- a/netbox/utilities/markdown.py
+++ b/netbox/utilities/markdown.py
@@ -14,7 +14,7 @@ class StrikethroughExtension(markdown.Extension):
"""
def extendMarkdown(self, md):
md.inlinePatterns.register(
- markdown.inlinepatterns.SimpleTagPattern(STRIKE_RE, 'del'),
+ SimpleTagPattern(STRIKE_RE, 'del'),
'strikethrough',
200
)
diff --git a/netbox/utilities/release.py b/netbox/utilities/release.py
index 256588b0b..f389e8009 100644
--- a/netbox/utilities/release.py
+++ b/netbox/utilities/release.py
@@ -1,9 +1,9 @@
import datetime
import os
-import yaml
from dataclasses import asdict, dataclass, field
-from typing import List, Union
+from typing import Union
+import yaml
from django.core.exceptions import ImproperlyConfigured
from utilities.datetime import datetime_from_timestamp
diff --git a/netbox/utilities/serializers/json.py b/netbox/utilities/serializers/json.py
index b728b0a34..e64e9e0f6 100644
--- a/netbox/utilities/serializers/json.py
+++ b/netbox/utilities/serializers/json.py
@@ -1,5 +1,5 @@
from django.contrib.postgres.fields import ArrayField
-from django.core.serializers.json import Deserializer, Serializer as Serializer_ # noqa
+from django.core.serializers.json import Deserializer, Serializer as Serializer_ # noqa: F401
from django.utils.encoding import is_protected_type
# NOTE: Module must contain both Serializer and Deserializer
diff --git a/netbox/utilities/socks.py b/netbox/utilities/socks.py
new file mode 100644
index 000000000..bb0b6b250
--- /dev/null
+++ b/netbox/utilities/socks.py
@@ -0,0 +1,101 @@
+import logging
+
+from urllib.parse import urlparse
+from urllib3 import PoolManager, HTTPConnectionPool, HTTPSConnectionPool
+from urllib3.connection import HTTPConnection, HTTPSConnection
+from .constants import HTTP_PROXY_SOCK_RDNS_SCHEMAS
+
+
+logger = logging.getLogger('netbox.utilities')
+
+
+class ProxyHTTPConnection(HTTPConnection):
+ """
+ A Proxy connection class that uses a SOCK proxy - used to create
+ a urllib3 PoolManager that routes connections via the proxy.
+ This is for an HTTP (not HTTPS) connection
+ """
+ use_rdns = False
+
+ def __init__(self, *args, **kwargs):
+ socks_options = kwargs.pop('_socks_options')
+ self._proxy_url = socks_options['proxy_url']
+ super().__init__(*args, **kwargs)
+
+ def _new_conn(self):
+ try:
+ from python_socks.sync import Proxy
+ except ModuleNotFoundError as e:
+ logger.info("Configuring an HTTP proxy using SOCKS requires the python_socks library. Check that it has been installed.")
+ raise e
+
+ proxy = Proxy.from_url(self._proxy_url, rdns=self.use_rdns)
+ return proxy.connect(
+ dest_host=self.host,
+ dest_port=self.port,
+ timeout=self.timeout
+ )
+
+
+class ProxyHTTPSConnection(ProxyHTTPConnection, HTTPSConnection):
+ """
+ A Proxy connection class for an HTTPS (not HTTP) connection.
+ """
+ pass
+
+
+class RdnsProxyHTTPConnection(ProxyHTTPConnection):
+ """
+ A Proxy connection class for an HTTP remote-dns connection.
+ I.E. socks4a, socks4h, socks5a, socks5h
+ """
+ use_rdns = True
+
+
+class RdnsProxyHTTPSConnection(ProxyHTTPSConnection):
+ """
+ A Proxy connection class for an HTTPS remote-dns connection.
+ I.E. socks4a, socks4h, socks5a, socks5h
+ """
+ use_rdns = True
+
+
+class ProxyHTTPConnectionPool(HTTPConnectionPool):
+ ConnectionCls = ProxyHTTPConnection
+
+
+class ProxyHTTPSConnectionPool(HTTPSConnectionPool):
+ ConnectionCls = ProxyHTTPSConnection
+
+
+class RdnsProxyHTTPConnectionPool(HTTPConnectionPool):
+ ConnectionCls = RdnsProxyHTTPConnection
+
+
+class RdnsProxyHTTPSConnectionPool(HTTPSConnectionPool):
+ ConnectionCls = RdnsProxyHTTPSConnection
+
+
+class ProxyPoolManager(PoolManager):
+ def __init__(self, proxy_url, timeout=5, num_pools=10, headers=None, **connection_pool_kw):
+ # python_socks uses rdns param to denote remote DNS parsing and
+ # doesn't accept the 'h' or 'a' in the proxy URL
+ if use_rdns := urlparse(proxy_url).scheme in HTTP_PROXY_SOCK_RDNS_SCHEMAS:
+ proxy_url = proxy_url.replace('socks5h:', 'socks5:').replace('socks5a:', 'socks5:')
+ proxy_url = proxy_url.replace('socks4h:', 'socks4:').replace('socks4a:', 'socks4:')
+
+ connection_pool_kw['_socks_options'] = {'proxy_url': proxy_url}
+ connection_pool_kw['timeout'] = timeout
+
+ super().__init__(num_pools, headers, **connection_pool_kw)
+
+ if use_rdns:
+ self.pool_classes_by_scheme = {
+ 'http': RdnsProxyHTTPConnectionPool,
+ 'https': RdnsProxyHTTPSConnectionPool,
+ }
+ else:
+ self.pool_classes_by_scheme = {
+ 'http': ProxyHTTPConnectionPool,
+ 'https': ProxyHTTPSConnectionPool,
+ }
diff --git a/netbox/utilities/templatetags/form_helpers.py b/netbox/utilities/templatetags/form_helpers.py
index 242bd7b1c..ec53fe97c 100644
--- a/netbox/utilities/templatetags/form_helpers.py
+++ b/netbox/utilities/templatetags/form_helpers.py
@@ -1,8 +1,6 @@
-import warnings
-
from django import template
-from utilities.forms.rendering import FieldSet, InlineFields, ObjectAttribute, TabbedGroups
+from utilities.forms.rendering import InlineFields, ObjectAttribute, TabbedGroups
__all__ = (
'getfield',
diff --git a/netbox/utilities/tests/test_api.py b/netbox/utilities/tests/test_api.py
index 81be70a34..ba0c3c4f8 100644
--- a/netbox/utilities/tests/test_api.py
+++ b/netbox/utilities/tests/test_api.py
@@ -149,7 +149,7 @@ class APIPaginationTestCase(APITestCase):
self.assertHttpStatus(response, status.HTTP_200_OK)
self.assertEqual(response.data['count'], 100)
- self.assertTrue(response.data['next'].endswith(f'?limit=10&offset=10'))
+ self.assertTrue(response.data['next'].endswith('?limit=10&offset=10'))
self.assertIsNone(response.data['previous'])
self.assertEqual(len(response.data['results']), 10)
@@ -159,7 +159,7 @@ class APIPaginationTestCase(APITestCase):
self.assertHttpStatus(response, status.HTTP_200_OK)
self.assertEqual(response.data['count'], 100)
- self.assertTrue(response.data['next'].endswith(f'?limit=20&offset=20'))
+ self.assertTrue(response.data['next'].endswith('?limit=20&offset=20'))
self.assertIsNone(response.data['previous'])
self.assertEqual(len(response.data['results']), 20)
diff --git a/netbox/utilities/tests/test_counters.py b/netbox/utilities/tests/test_counters.py
index b87e73ace..45823065e 100644
--- a/netbox/utilities/tests/test_counters.py
+++ b/netbox/utilities/tests/test_counters.py
@@ -85,7 +85,7 @@ class CountersTest(TestCase):
def test_mptt_child_delete(self):
device1, device2 = Device.objects.all()
inventory_item1 = InventoryItem.objects.create(device=device1, name='Inventory Item 1')
- inventory_item2 = InventoryItem.objects.create(device=device1, name='Inventory Item 2', parent=inventory_item1)
+ InventoryItem.objects.create(device=device1, name='Inventory Item 2', parent=inventory_item1)
device1.refresh_from_db()
self.assertEqual(device1.inventory_item_count, 2)
diff --git a/netbox/utilities/tests/test_filters.py b/netbox/utilities/tests/test_filters.py
index dd6194565..53e6eb985 100644
--- a/netbox/utilities/tests/test_filters.py
+++ b/netbox/utilities/tests/test_filters.py
@@ -7,7 +7,7 @@ from taggit.managers import TaggableManager
from dcim.choices import *
from dcim.fields import MACAddressField
-from dcim.filtersets import DeviceFilterSet, SiteFilterSet
+from dcim.filtersets import DeviceFilterSet, SiteFilterSet, InterfaceFilterSet
from dcim.models import (
Device, DeviceRole, DeviceType, Interface, Manufacturer, Platform, Rack, Region, Site
)
@@ -16,6 +16,7 @@ from extras.models import TaggedItem
from ipam.filtersets import ASNFilterSet
from ipam.models import RIR, ASN
from netbox.filtersets import BaseFilterSet
+from wireless.choices import WirelessRoleChoices
from utilities.filters import (
MultiValueCharFilter, MultiValueDateFilter, MultiValueDateTimeFilter, MultiValueMACAddressFilter,
MultiValueNumberFilter, MultiValueTimeFilter, TreeNodeMultipleChoiceFilter,
@@ -408,9 +409,9 @@ class DynamicFilterLookupExpressionTest(TestCase):
region.save()
sites = (
- Site(name='Site 1', slug='abc-site-1', region=regions[0]),
- Site(name='Site 2', slug='def-site-2', region=regions[1]),
- Site(name='Site 3', slug='ghi-site-3', region=regions[2]),
+ Site(name='Site 1', slug='abc-site-1', region=regions[0], status=SiteStatusChoices.STATUS_ACTIVE),
+ Site(name='Site 2', slug='def-site-2', region=regions[1], status=SiteStatusChoices.STATUS_ACTIVE),
+ Site(name='Site 3', slug='ghi-site-3', region=regions[2], status=SiteStatusChoices.STATUS_PLANNED),
)
Site.objects.bulk_create(sites)
@@ -438,7 +439,7 @@ class DynamicFilterLookupExpressionTest(TestCase):
Interface(device=devices[1], name='Interface 3', mac_address='00-00-00-00-00-02'),
Interface(device=devices[1], name='Interface 4', mac_address='bb-00-00-00-00-02'),
Interface(device=devices[2], name='Interface 5', mac_address='00-00-00-00-00-03'),
- Interface(device=devices[2], name='Interface 6', mac_address='cc-00-00-00-00-03'),
+ Interface(device=devices[2], name='Interface 6', mac_address='cc-00-00-00-00-03', rf_role=WirelessRoleChoices.ROLE_AP),
)
Interface.objects.bulk_create(interfaces)
@@ -446,6 +447,14 @@ class DynamicFilterLookupExpressionTest(TestCase):
params = {'name__n': ['Site 1']}
self.assertEqual(SiteFilterSet(params, Site.objects.all()).qs.count(), 2)
+ def test_site_status_icontains(self):
+ params = {'status__ic': [SiteStatusChoices.STATUS_ACTIVE]}
+ self.assertEqual(SiteFilterSet(params, Site.objects.all()).qs.count(), 2)
+
+ def test_site_status_icontains_negation(self):
+ params = {'status__nic': [SiteStatusChoices.STATUS_ACTIVE]}
+ self.assertEqual(SiteFilterSet(params, Site.objects.all()).qs.count(), 1)
+
def test_site_slug_icontains(self):
params = {'slug__ic': ['-1']}
self.assertEqual(SiteFilterSet(params, Site.objects.all()).qs.count(), 1)
@@ -553,3 +562,9 @@ class DynamicFilterLookupExpressionTest(TestCase):
def test_device_mac_address_icontains_negation(self):
params = {'mac_address__nic': ['aa:', 'bb']}
self.assertEqual(DeviceFilterSet(params, Device.objects.all()).qs.count(), 1)
+
+ def test_interface_rf_role_empty(self):
+ params = {'rf_role__empty': 'true'}
+ self.assertEqual(InterfaceFilterSet(params, Interface.objects.all()).qs.count(), 5)
+ params = {'rf_role__empty': 'false'}
+ self.assertEqual(InterfaceFilterSet(params, Interface.objects.all()).qs.count(), 1)
diff --git a/netbox/virtualization/api/nested_serializers.py b/netbox/virtualization/api/nested_serializers.py
index a2395faa5..59016f74d 100644
--- a/netbox/virtualization/api/nested_serializers.py
+++ b/netbox/virtualization/api/nested_serializers.py
@@ -18,7 +18,7 @@ __all__ = [
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/virtualization/api/serializers_/clusters.py b/netbox/virtualization/api/serializers_/clusters.py
index b16487132..b64b6e7ba 100644
--- a/netbox/virtualization/api/serializers_/clusters.py
+++ b/netbox/virtualization/api/serializers_/clusters.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from dcim.api.serializers_.sites import SiteSerializer
from netbox.api.fields import ChoiceField, RelatedObjectCountField
from netbox.api.serializers import NetBoxModelSerializer
diff --git a/netbox/virtualization/apps.py b/netbox/virtualization/apps.py
index 8a61bc523..ebcc591bf 100644
--- a/netbox/virtualization/apps.py
+++ b/netbox/virtualization/apps.py
@@ -9,7 +9,7 @@ class VirtualizationConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
from utilities.counters import connect_counters
- from . import search, signals
+ from . import search, signals # noqa: F401
from .models import VirtualMachine
# Register models
diff --git a/netbox/virtualization/tests/test_views.py b/netbox/virtualization/tests/test_views.py
index 0daa55a5c..3c6a058c9 100644
--- a/netbox/virtualization/tests/test_views.py
+++ b/netbox/virtualization/tests/test_views.py
@@ -354,14 +354,14 @@ class VMInterfaceTestCase(ViewTestCases.DeviceComponentViewTestCase):
}
cls.csv_data = (
- f"virtual_machine,name,vrf.pk",
+ "virtual_machine,name,vrf.pk",
f"Virtual Machine 2,Interface 4,{vrfs[0].pk}",
f"Virtual Machine 2,Interface 5,{vrfs[0].pk}",
f"Virtual Machine 2,Interface 6,{vrfs[0].pk}",
)
cls.csv_update_data = (
- f"id,name,description",
+ "id,name,description",
f"{interfaces[0].pk},Interface 7,New description 7",
f"{interfaces[1].pk},Interface 8,New description 8",
f"{interfaces[2].pk},Interface 9,New description 9",
@@ -438,14 +438,14 @@ class VirtualDiskTestCase(ViewTestCases.DeviceComponentViewTestCase):
}
cls.csv_data = (
- f"virtual_machine,name,size,description",
- f"Virtual Machine 1,Disk 4,20,Fourth",
- f"Virtual Machine 1,Disk 5,20,Fifth",
- f"Virtual Machine 1,Disk 6,20,Sixth",
+ "virtual_machine,name,size,description",
+ "Virtual Machine 1,Disk 4,20,Fourth",
+ "Virtual Machine 1,Disk 5,20,Fifth",
+ "Virtual Machine 1,Disk 6,20,Sixth",
)
cls.csv_update_data = (
- f"id,name,size",
+ "id,name,size",
f"{disks[0].pk},disk1,20",
f"{disks[1].pk},disk2,20",
f"{disks[2].pk},disk3,20",
diff --git a/netbox/virtualization/views.py b/netbox/virtualization/views.py
index ad3487b8b..0828d3a2a 100644
--- a/netbox/virtualization/views.py
+++ b/netbox/virtualization/views.py
@@ -657,7 +657,7 @@ class VirtualMachineBulkAddInterfaceView(generic.BulkComponentCreateView):
default_return_url = 'virtualization:virtualmachine_list'
def get_required_permission(self):
- return f'virtualization.add_vminterface'
+ return 'virtualization.add_vminterface'
class VirtualMachineBulkAddVirtualDiskView(generic.BulkComponentCreateView):
@@ -671,4 +671,4 @@ class VirtualMachineBulkAddVirtualDiskView(generic.BulkComponentCreateView):
default_return_url = 'virtualization:virtualmachine_list'
def get_required_permission(self):
- return f'virtualization.add_virtualdisk'
+ return 'virtualization.add_virtualdisk'
diff --git a/netbox/vpn/api/nested_serializers.py b/netbox/vpn/api/nested_serializers.py
index c1a90cbea..59e394c2e 100644
--- a/netbox/vpn/api/nested_serializers.py
+++ b/netbox/vpn/api/nested_serializers.py
@@ -21,7 +21,7 @@ __all__ = (
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/vpn/api/serializers_/crypto.py b/netbox/vpn/api/serializers_/crypto.py
index 700917b89..c11b8de2b 100644
--- a/netbox/vpn/api/serializers_/crypto.py
+++ b/netbox/vpn/api/serializers_/crypto.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from netbox.api.fields import ChoiceField, SerializedPKRelatedField
from netbox.api.serializers import NetBoxModelSerializer
from vpn.choices import *
diff --git a/netbox/vpn/apps.py b/netbox/vpn/apps.py
index 9a3751cb2..1afa0d527 100644
--- a/netbox/vpn/apps.py
+++ b/netbox/vpn/apps.py
@@ -7,7 +7,7 @@ class VPNConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
- from . import search
+ from . import search # noqa: F401
# Register models
register_models(*self.get_models())
diff --git a/netbox/vpn/choices.py b/netbox/vpn/choices.py
index 4aa97f615..751454049 100644
--- a/netbox/vpn/choices.py
+++ b/netbox/vpn/choices.py
@@ -219,6 +219,7 @@ class L2VPNTypeChoices(ChoiceSet):
TYPE_VXLAN_EVPN = 'vxlan-evpn'
TYPE_MPLS_EVPN = 'mpls-evpn'
TYPE_PBB_EVPN = 'pbb-evpn'
+ TYPE_EVPN_VPWS = 'evpn-vpws'
CHOICES = (
('VPLS', (
@@ -232,6 +233,7 @@ class L2VPNTypeChoices(ChoiceSet):
('L2VPN E-VPN', (
(TYPE_MPLS_EVPN, 'MPLS EVPN'),
(TYPE_PBB_EVPN, 'PBB EVPN'),
+ (TYPE_EVPN_VPWS, 'EVPN VPWS')
)),
('E-Line', (
(TYPE_EPL, 'EPL'),
diff --git a/netbox/vpn/filtersets.py b/netbox/vpn/filtersets.py
index 92aa702c6..6403b662f 100644
--- a/netbox/vpn/filtersets.py
+++ b/netbox/vpn/filtersets.py
@@ -147,17 +147,6 @@ class IKEProposalFilterSet(NetBoxModelFilterSet):
group = django_filters.MultipleChoiceFilter(
choices=DHGroupChoices
)
- ike_policy_id = django_filters.ModelMultipleChoiceFilter(
- field_name='ike_policies',
- queryset=IKEPolicy.objects.all(),
- label=_('IKE policy (ID)'),
- )
- ike_policy = django_filters.ModelMultipleChoiceFilter(
- field_name='ike_policies__name',
- queryset=IKEPolicy.objects.all(),
- to_field_name='name',
- label=_('IKE policy (name)'),
- )
class Meta:
model = IKEProposal
diff --git a/netbox/vpn/tests/test_filtersets.py b/netbox/vpn/tests/test_filtersets.py
index 0b9c79420..d2b893766 100644
--- a/netbox/vpn/tests/test_filtersets.py
+++ b/netbox/vpn/tests/test_filtersets.py
@@ -385,13 +385,6 @@ class IKEProposalTestCase(TestCase, ChangeLoggedFilterSetTests):
params = {'sa_lifetime': [1000, 2000]}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
- def test_ike_policy(self):
- ike_policies = IKEPolicy.objects.all()[:2]
- params = {'ike_policy_id': [ike_policies[0].pk, ike_policies[1].pk]}
- self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
- params = {'ike_policy': [ike_policies[0].name, ike_policies[1].name]}
- self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
-
class IKEPolicyTestCase(TestCase, ChangeLoggedFilterSetTests):
queryset = IKEPolicy.objects.all()
diff --git a/netbox/vpn/tests/test_views.py b/netbox/vpn/tests/test_views.py
index 105ca0b6f..05ac527fe 100644
--- a/netbox/vpn/tests/test_views.py
+++ b/netbox/vpn/tests/test_views.py
@@ -542,9 +542,9 @@ class IPSecProfileTestCase(ViewTestCases.PrimaryObjectViewTestCase):
cls.csv_data = (
"name,mode,ike_policy,ipsec_policy",
- f"IKE Proposal 4,ah,IKE Policy 2,IPSec Policy 2",
- f"IKE Proposal 5,ah,IKE Policy 2,IPSec Policy 2",
- f"IKE Proposal 6,ah,IKE Policy 2,IPSec Policy 2",
+ "IKE Proposal 4,ah,IKE Policy 2,IPSec Policy 2",
+ "IKE Proposal 5,ah,IKE Policy 2,IPSec Policy 2",
+ "IKE Proposal 6,ah,IKE Policy 2,IPSec Policy 2",
)
cls.csv_update_data = (
@@ -661,7 +661,7 @@ class L2VPNTerminationTestCase(
)
cls.csv_update_data = (
- f"id,l2vpn",
+ "id,l2vpn",
f"{terminations[0].pk},{l2vpns[0].name}",
f"{terminations[1].pk},{l2vpns[0].name}",
f"{terminations[2].pk},{l2vpns[0].name}",
diff --git a/netbox/wireless/api/nested_serializers.py b/netbox/wireless/api/nested_serializers.py
index 433164e60..9b8b6c3e3 100644
--- a/netbox/wireless/api/nested_serializers.py
+++ b/netbox/wireless/api/nested_serializers.py
@@ -12,7 +12,7 @@ __all__ = (
# TODO: Remove in v4.2
warnings.warn(
- f"Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
+ "Dedicated nested serializers will be removed in NetBox v4.2. Use Serializer(nested=True) instead.",
DeprecationWarning
)
diff --git a/netbox/wireless/api/serializers_/wirelesslinks.py b/netbox/wireless/api/serializers_/wirelesslinks.py
index 494c3514b..62f9988f1 100644
--- a/netbox/wireless/api/serializers_/wirelesslinks.py
+++ b/netbox/wireless/api/serializers_/wirelesslinks.py
@@ -1,5 +1,3 @@
-from rest_framework import serializers
-
from dcim.api.serializers_.device_components import InterfaceSerializer
from dcim.choices import LinkStatusChoices
from netbox.api.fields import ChoiceField
diff --git a/netbox/wireless/apps.py b/netbox/wireless/apps.py
index 24e1869b6..ea2d9bbc0 100644
--- a/netbox/wireless/apps.py
+++ b/netbox/wireless/apps.py
@@ -6,7 +6,7 @@ class WirelessConfig(AppConfig):
def ready(self):
from netbox.models.features import register_models
- from . import signals, search
+ from . import signals, search # noqa: F401
# Register models
register_models(*self.get_models())
diff --git a/netbox/wireless/filtersets.py b/netbox/wireless/filtersets.py
index 9f60388ce..537b2ec5c 100644
--- a/netbox/wireless/filtersets.py
+++ b/netbox/wireless/filtersets.py
@@ -6,7 +6,7 @@ from dcim.models import Interface
from ipam.models import VLAN
from netbox.filtersets import OrganizationalModelFilterSet, NetBoxModelFilterSet
from tenancy.filtersets import TenancyFilterSet
-from utilities.filters import MultiValueNumberFilter, TreeNodeMultipleChoiceFilter
+from utilities.filters import TreeNodeMultipleChoiceFilter
from .choices import *
from .models import *
diff --git a/netbox/wireless/tests/test_views.py b/netbox/wireless/tests/test_views.py
index e8fd4340d..d28d9fde3 100644
--- a/netbox/wireless/tests/test_views.py
+++ b/netbox/wireless/tests/test_views.py
@@ -103,14 +103,14 @@ class WirelessLANTestCase(ViewTestCases.PrimaryObjectViewTestCase):
}
cls.csv_data = (
- f"group,ssid,status,tenant",
+ "group,ssid,status,tenant",
f"Wireless LAN Group 2,WLAN4,{WirelessLANStatusChoices.STATUS_ACTIVE},{tenants[0].name}",
f"Wireless LAN Group 2,WLAN5,{WirelessLANStatusChoices.STATUS_DISABLED},{tenants[1].name}",
f"Wireless LAN Group 2,WLAN6,{WirelessLANStatusChoices.STATUS_RESERVED},{tenants[2].name}",
)
cls.csv_update_data = (
- f"id,ssid",
+ "id,ssid",
f"{wireless_lans[0].pk},WLAN7",
f"{wireless_lans[1].pk},WLAN8",
f"{wireless_lans[2].pk},WLAN9",
@@ -168,7 +168,7 @@ class WirelessLinkTestCase(ViewTestCases.PrimaryObjectViewTestCase):
}
cls.csv_data = (
- f"interface_a,interface_b,status,tenant",
+ "interface_a,interface_b,status,tenant",
f"{interfaces[6].pk},{interfaces[7].pk},connected,{tenants[0].name}",
f"{interfaces[8].pk},{interfaces[9].pk},connected,{tenants[1].name}",
f"{interfaces[10].pk},{interfaces[11].pk},connected,{tenants[2].name}",
diff --git a/requirements.txt b/requirements.txt
index fca329ccc..ec5ea6dea 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -10,7 +10,7 @@ django-prometheus==2.3.1
django-redis==5.4.0
django-rich==1.11.0
django-rq==2.10.2
-django-taggit==6.0.0
+django-taggit==6.1.0
django-tables2==2.7.0
django-timezone-field==7.0
djangorestframework==3.15.2
@@ -20,18 +20,18 @@ feedparser==6.0.11
gunicorn==23.0.0
Jinja2==3.1.4
Markdown==3.7
-mkdocs-material==9.5.34
+mkdocs-material==9.5.39
mkdocstrings[python-legacy]==0.26.1
netaddr==1.3.0
nh3==0.2.18
Pillow==10.4.0
-psycopg[c,pool]==3.2.1
+psycopg[c,pool]==3.2.3
PyYAML==6.0.2
requests==2.32.3
social-auth-app-django==5.4.2
social-auth-core==4.5.4
-strawberry-graphql==0.240.2
-strawberry-graphql-django==0.47.2
+strawberry-graphql==0.243.1
+strawberry-graphql-django==0.48.0
svgwrite==1.4.3
tablib==3.6.1
-tzdata==2024.1
+tzdata==2024.2
diff --git a/ruff.toml b/ruff.toml
new file mode 100644
index 000000000..854404469
--- /dev/null
+++ b/ruff.toml
@@ -0,0 +1,2 @@
+[lint]
+ignore = ["E501", "F403", "F405"]
diff --git a/scripts/git-hooks/pre-commit b/scripts/git-hooks/pre-commit
index 2ccf8df89..4b4ca172f 100755
--- a/scripts/git-hooks/pre-commit
+++ b/scripts/git-hooks/pre-commit
@@ -28,8 +28,8 @@ if [ ${NOVALIDATE} ]; then
exit $EXIT
fi
-echo "Validating PEP8 compliance..."
-pycodestyle --ignore=W504,E501 --exclude=node_modules netbox/
+echo "Linting with ruff..."
+ruff check netbox/
if [ $? != 0 ]; then
EXIT=1
fi
|