diff --git a/netbox/translations/en/LC_MESSAGES/django.po b/netbox/translations/en/LC_MESSAGES/django.po index ff4f0e377..2e7ba8d60 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: 2026-06-26 06:21+0000\n" +"POT-Creation-Date: 2026-06-27 06:10+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -41,9 +41,9 @@ msgstr "" #: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20 #: netbox/dcim/choices.py:102 netbox/dcim/choices.py:204 -#: netbox/dcim/choices.py:257 netbox/dcim/choices.py:1969 -#: netbox/dcim/choices.py:2027 netbox/dcim/choices.py:2094 -#: netbox/dcim/choices.py:2116 netbox/virtualization/choices.py:20 +#: netbox/dcim/choices.py:257 netbox/dcim/choices.py:1971 +#: netbox/dcim/choices.py:2029 netbox/dcim/choices.py:2096 +#: netbox/dcim/choices.py:2118 netbox/virtualization/choices.py:20 #: netbox/virtualization/choices.py:46 netbox/vpn/choices.py:18 #: netbox/vpn/choices.py:281 msgid "Planned" @@ -57,8 +57,8 @@ msgstr "" #: netbox/core/tables/tasks.py:23 netbox/dcim/choices.py:22 #: netbox/dcim/choices.py:103 netbox/dcim/choices.py:155 #: netbox/dcim/choices.py:203 netbox/dcim/choices.py:256 -#: netbox/dcim/choices.py:2026 netbox/dcim/choices.py:2093 -#: netbox/dcim/choices.py:2115 netbox/extras/tables/tables.py:648 +#: netbox/dcim/choices.py:2028 netbox/dcim/choices.py:2095 +#: netbox/dcim/choices.py:2117 netbox/extras/tables/tables.py:648 #: netbox/extras/ui/panels.py:441 netbox/ipam/choices.py:31 #: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69 #: netbox/ipam/choices.py:154 netbox/users/forms/bulk_edit.py:41 @@ -69,8 +69,8 @@ msgid "Active" msgstr "" #: netbox/circuits/choices.py:24 netbox/dcim/choices.py:202 -#: netbox/dcim/choices.py:255 netbox/dcim/choices.py:2025 -#: netbox/dcim/choices.py:2095 netbox/dcim/choices.py:2114 +#: netbox/dcim/choices.py:255 netbox/dcim/choices.py:2027 +#: netbox/dcim/choices.py:2097 netbox/dcim/choices.py:2116 #: netbox/virtualization/choices.py:24 netbox/virtualization/choices.py:44 msgid "Offline" msgstr "" @@ -83,7 +83,7 @@ msgstr "" msgid "Decommissioned" msgstr "" -#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:2038 +#: netbox/circuits/choices.py:90 netbox/dcim/choices.py:2040 #: netbox/dcim/tables/devices.py:1238 #: netbox/templates/dcim/interface/attrs/mac_address.html:3 #: netbox/tenancy/choices.py:17 @@ -494,9 +494,10 @@ msgstr "" #: netbox/dcim/forms/object_import.py:85 netbox/dcim/forms/object_import.py:114 #: netbox/dcim/forms/object_import.py:127 netbox/dcim/tables/devices.py:182 #: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:155 -#: netbox/extras/forms/bulk_import.py:48 netbox/extras/tables/tables.py:515 -#: netbox/extras/tables/tables.py:584 netbox/extras/ui/panels.py:128 -#: netbox/extras/ui/panels.py:377 netbox/netbox/tables/tables.py:390 +#: netbox/extras/forms/bulk_import.py:48 netbox/extras/tables/tables.py:427 +#: netbox/extras/tables/tables.py:515 netbox/extras/tables/tables.py:584 +#: netbox/extras/ui/panels.py:128 netbox/extras/ui/panels.py:377 +#: netbox/netbox/tables/tables.py:390 #: netbox/templates/core/htmx/system_db_schema.html:70 #: netbox/templates/dcim/panels/interface_connection.html:68 #: netbox/templates/wireless/panels/wirelesslink_interface.html:16 @@ -1300,7 +1301,7 @@ msgstr "" #: netbox/dcim/models/device_components.py:634 #: netbox/dcim/models/device_components.py:1575 #: netbox/dcim/models/devices.py:599 netbox/dcim/models/devices.py:1261 -#: netbox/dcim/models/modules.py:264 netbox/dcim/models/power.py:95 +#: netbox/dcim/models/modules.py:269 netbox/dcim/models/power.py:95 #: netbox/dcim/models/racks.py:329 netbox/dcim/models/racks.py:713 #: netbox/dcim/models/sites.py:163 netbox/dcim/models/sites.py:287 #: netbox/ipam/models/ip.py:252 netbox/ipam/models/ip.py:680 @@ -1402,7 +1403,7 @@ msgstr "" #: netbox/dcim/models/device_component_templates.py:69 #: netbox/dcim/models/device_components.py:67 netbox/dcim/models/racks.py:730 #: netbox/extras/models/configs.py:42 netbox/extras/models/configs.py:95 -#: netbox/extras/models/configs.py:286 netbox/extras/models/customfields.py:152 +#: netbox/extras/models/configs.py:286 netbox/extras/models/customfields.py:153 #: netbox/extras/models/models.py:72 netbox/extras/models/models.py:181 #: netbox/extras/models/models.py:428 netbox/extras/models/models.py:496 #: netbox/extras/models/models.py:578 netbox/extras/models/models.py:719 @@ -1434,11 +1435,11 @@ msgstr "" #: netbox/dcim/models/device_component_templates.py:55 #: netbox/dcim/models/device_components.py:56 netbox/dcim/models/devices.py:543 #: netbox/dcim/models/devices.py:1184 netbox/dcim/models/devices.py:1256 -#: netbox/dcim/models/modules.py:35 netbox/dcim/models/power.py:39 +#: netbox/dcim/models/modules.py:37 netbox/dcim/models/power.py:39 #: netbox/dcim/models/power.py:90 netbox/dcim/models/racks.py:290 #: netbox/dcim/models/sites.py:151 netbox/extras/models/configs.py:37 #: netbox/extras/models/configs.py:79 netbox/extras/models/configs.py:282 -#: netbox/extras/models/customfields.py:119 netbox/extras/models/models.py:67 +#: netbox/extras/models/customfields.py:120 netbox/extras/models/models.py:67 #: netbox/extras/models/models.py:176 netbox/extras/models/models.py:318 #: netbox/extras/models/models.py:424 netbox/extras/models/models.py:486 #: netbox/extras/models/models.py:574 netbox/extras/models/models.py:714 @@ -1834,7 +1835,7 @@ msgstr "" #: netbox/core/choices.py:22 netbox/core/choices.py:59 #: netbox/core/constants.py:21 netbox/core/tables/tasks.py:35 #: netbox/dcim/choices.py:206 netbox/dcim/choices.py:259 -#: netbox/dcim/choices.py:2028 netbox/dcim/choices.py:2118 +#: netbox/dcim/choices.py:2030 netbox/dcim/choices.py:2120 #: netbox/virtualization/choices.py:48 msgid "Failed" msgstr "" @@ -1964,7 +1965,7 @@ msgstr "" msgid "Warning" msgstr "" -#: netbox/core/constants.py:33 netbox/netbox/tables/columns.py:594 +#: netbox/core/constants.py:33 netbox/netbox/tables/columns.py:597 msgid "Error" msgstr "" @@ -2035,7 +2036,7 @@ msgid "User name" msgstr "" #: netbox/core/forms/bulk_edit.py:25 netbox/core/forms/filtersets.py:47 -#: netbox/core/tables/data.py:28 netbox/dcim/choices.py:2076 +#: netbox/core/tables/data.py:28 netbox/dcim/choices.py:2078 #: netbox/dcim/forms/bulk_edit.py:1151 netbox/dcim/forms/bulk_edit.py:1255 #: netbox/dcim/forms/bulk_edit.py:1278 netbox/dcim/forms/bulk_edit.py:1442 #: netbox/dcim/forms/filtersets.py:1687 netbox/dcim/forms/filtersets.py:1780 @@ -2216,7 +2217,7 @@ msgstr "" msgid "Rack Elevations" msgstr "" -#: netbox/core/forms/model_forms.py:151 netbox/dcim/choices.py:1947 +#: netbox/core/forms/model_forms.py:151 netbox/dcim/choices.py:1949 #: netbox/dcim/forms/bulk_edit.py:990 netbox/dcim/forms/bulk_edit.py:1396 #: netbox/dcim/forms/bulk_edit.py:1417 netbox/dcim/tables/racks.py:172 #: netbox/netbox/navigation/menu.py:324 netbox/netbox/navigation/menu.py:328 @@ -2380,7 +2381,7 @@ msgstr "" #: netbox/dcim/models/device_components.py:858 #: netbox/dcim/models/device_components.py:1241 #: netbox/dcim/models/device_components.py:1289 netbox/dcim/models/power.py:101 -#: netbox/extras/models/customfields.py:105 netbox/extras/models/search.py:42 +#: netbox/extras/models/customfields.py:106 netbox/extras/models/search.py:42 #: netbox/virtualization/models/clusters.py:57 #: netbox/virtualization/models/virtualmachines.py:121 #: netbox/vpn/models/l2vpn.py:31 @@ -2459,7 +2460,7 @@ msgstr "" msgid "last updated" msgstr "" -#: netbox/core/models/data.py:304 netbox/dcim/models/cables.py:744 +#: netbox/core/models/data.py:304 netbox/dcim/models/cables.py:745 msgid "path" msgstr "" @@ -2930,39 +2931,39 @@ msgstr "" msgid "Position (U)" msgstr "" -#: netbox/dcim/api/serializers_/devices.py:178 +#: netbox/dcim/api/serializers_/devices.py:193 #: netbox/dcim/forms/bulk_import.py:786 netbox/dcim/forms/model_forms.py:819 msgid "Replicate components" msgstr "" -#: netbox/dcim/api/serializers_/devices.py:179 +#: netbox/dcim/api/serializers_/devices.py:194 msgid "" "Automatically populate components associated with this module type (default: " "true)" msgstr "" -#: netbox/dcim/api/serializers_/devices.py:185 +#: netbox/dcim/api/serializers_/devices.py:200 #: netbox/dcim/forms/bulk_import.py:791 netbox/dcim/forms/model_forms.py:825 msgid "Adopt components" msgstr "" -#: netbox/dcim/api/serializers_/devices.py:186 +#: netbox/dcim/api/serializers_/devices.py:201 #: netbox/dcim/forms/bulk_import.py:793 netbox/dcim/forms/model_forms.py:828 msgid "Adopt already existing components" msgstr "" -#: netbox/dcim/api/serializers_/devices.py:252 netbox/dcim/forms/common.py:114 +#: netbox/dcim/api/serializers_/devices.py:267 netbox/dcim/forms/common.py:114 msgid "" "Cannot install module with placeholder values in a module bay with no " "position defined." msgstr "" -#: netbox/dcim/api/serializers_/devices.py:263 netbox/dcim/forms/common.py:126 +#: netbox/dcim/api/serializers_/devices.py:278 netbox/dcim/forms/common.py:126 #, python-brace-format msgid "Cannot adopt {model} {name} as it already belongs to a module" msgstr "" -#: netbox/dcim/api/serializers_/devices.py:271 netbox/dcim/forms/common.py:135 +#: netbox/dcim/api/serializers_/devices.py:286 netbox/dcim/forms/common.py:135 #, python-brace-format msgid "A {model} named {name} already exists" msgstr "" @@ -2990,8 +2991,8 @@ msgid "Staging" msgstr "" #: netbox/dcim/choices.py:23 netbox/dcim/choices.py:208 -#: netbox/dcim/choices.py:260 netbox/dcim/choices.py:1970 -#: netbox/dcim/choices.py:2119 netbox/virtualization/choices.py:23 +#: netbox/dcim/choices.py:260 netbox/dcim/choices.py:1972 +#: netbox/dcim/choices.py:2121 netbox/virtualization/choices.py:23 #: netbox/virtualization/choices.py:49 netbox/vpn/choices.py:282 msgid "Decommissioning" msgstr "" @@ -3057,7 +3058,7 @@ msgstr "" msgid "Millimeters" msgstr "" -#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1992 +#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1994 msgid "Inches" msgstr "" @@ -3129,7 +3130,7 @@ msgid "Rear" msgstr "" #: netbox/dcim/choices.py:205 netbox/dcim/choices.py:258 -#: netbox/dcim/choices.py:2117 netbox/virtualization/choices.py:47 +#: netbox/dcim/choices.py:2119 netbox/virtualization/choices.py:47 msgid "Staged" msgstr "" @@ -3367,192 +3368,196 @@ msgstr "" msgid "Fiber Optic" msgstr "" -#: netbox/dcim/choices.py:1737 netbox/dcim/choices.py:1953 +#: netbox/dcim/choices.py:1737 netbox/dcim/choices.py:1955 msgid "USB" msgstr "" -#: netbox/dcim/choices.py:1794 +#: netbox/dcim/choices.py:1795 msgid "Single" msgstr "" -#: netbox/dcim/choices.py:1796 +#: netbox/dcim/choices.py:1797 msgid "1C1P" msgstr "" -#: netbox/dcim/choices.py:1797 +#: netbox/dcim/choices.py:1798 msgid "1C2P" msgstr "" -#: netbox/dcim/choices.py:1798 +#: netbox/dcim/choices.py:1799 msgid "1C4P" msgstr "" -#: netbox/dcim/choices.py:1799 +#: netbox/dcim/choices.py:1800 msgid "1C6P" msgstr "" -#: netbox/dcim/choices.py:1800 +#: netbox/dcim/choices.py:1801 msgid "1C8P" msgstr "" -#: netbox/dcim/choices.py:1801 +#: netbox/dcim/choices.py:1802 msgid "1C12P" msgstr "" -#: netbox/dcim/choices.py:1802 +#: netbox/dcim/choices.py:1803 msgid "1C16P" msgstr "" -#: netbox/dcim/choices.py:1806 +#: netbox/dcim/choices.py:1807 msgid "Trunk" msgstr "" -#: netbox/dcim/choices.py:1808 +#: netbox/dcim/choices.py:1809 msgid "2C1P trunk" msgstr "" -#: netbox/dcim/choices.py:1809 +#: netbox/dcim/choices.py:1810 msgid "2C2P trunk" msgstr "" -#: netbox/dcim/choices.py:1810 +#: netbox/dcim/choices.py:1811 msgid "2C4P trunk" msgstr "" -#: netbox/dcim/choices.py:1811 +#: netbox/dcim/choices.py:1812 msgid "2C4P trunk (shuffle)" msgstr "" -#: netbox/dcim/choices.py:1812 +#: netbox/dcim/choices.py:1813 msgid "2C6P trunk" msgstr "" -#: netbox/dcim/choices.py:1813 +#: netbox/dcim/choices.py:1814 msgid "2C8P trunk" msgstr "" -#: netbox/dcim/choices.py:1814 +#: netbox/dcim/choices.py:1815 msgid "2C12P trunk" msgstr "" -#: netbox/dcim/choices.py:1815 +#: netbox/dcim/choices.py:1816 msgid "4C1P trunk" msgstr "" -#: netbox/dcim/choices.py:1816 +#: netbox/dcim/choices.py:1817 msgid "4C2P trunk" msgstr "" -#: netbox/dcim/choices.py:1817 +#: netbox/dcim/choices.py:1818 msgid "4C4P trunk" msgstr "" -#: netbox/dcim/choices.py:1818 +#: netbox/dcim/choices.py:1819 msgid "4C4P trunk (shuffle)" msgstr "" -#: netbox/dcim/choices.py:1819 +#: netbox/dcim/choices.py:1820 msgid "4C6P trunk" msgstr "" -#: netbox/dcim/choices.py:1820 +#: netbox/dcim/choices.py:1821 msgid "4C8P trunk" msgstr "" -#: netbox/dcim/choices.py:1821 +#: netbox/dcim/choices.py:1822 msgid "8C4P trunk" msgstr "" -#: netbox/dcim/choices.py:1825 +#: netbox/dcim/choices.py:1826 msgid "Breakout" msgstr "" -#: netbox/dcim/choices.py:1827 +#: netbox/dcim/choices.py:1828 msgid "1C2P:2C1P breakout" msgstr "" -#: netbox/dcim/choices.py:1828 +#: netbox/dcim/choices.py:1829 msgid "1C4P:4C1P breakout" msgstr "" -#: netbox/dcim/choices.py:1829 +#: netbox/dcim/choices.py:1830 msgid "1C6P:6C1P breakout" msgstr "" -#: netbox/dcim/choices.py:1830 +#: netbox/dcim/choices.py:1831 +msgid "1C8P:8C1P breakout" +msgstr "" + +#: netbox/dcim/choices.py:1832 msgid "2C4P:8C1P breakout (shuffle)" msgstr "" -#: netbox/dcim/choices.py:1888 +#: netbox/dcim/choices.py:1890 msgid "Copper - Twisted Pair (UTP/STP)" msgstr "" -#: netbox/dcim/choices.py:1902 +#: netbox/dcim/choices.py:1904 msgid "Copper - Twinax (DAC)" msgstr "" -#: netbox/dcim/choices.py:1909 +#: netbox/dcim/choices.py:1911 msgid "Copper - Coaxial" msgstr "" -#: netbox/dcim/choices.py:1924 +#: netbox/dcim/choices.py:1926 msgid "Fiber - Multimode" msgstr "" -#: netbox/dcim/choices.py:1935 +#: netbox/dcim/choices.py:1937 msgid "Fiber - Single-mode" msgstr "" -#: netbox/dcim/choices.py:1943 +#: netbox/dcim/choices.py:1945 msgid "Fiber - Other" msgstr "" -#: netbox/dcim/choices.py:1968 netbox/dcim/forms/filtersets.py:1470 +#: netbox/dcim/choices.py:1970 netbox/dcim/forms/filtersets.py:1470 msgid "Connected" msgstr "" -#: netbox/dcim/choices.py:1987 netbox/netbox/choices.py:177 +#: netbox/dcim/choices.py:1989 netbox/netbox/choices.py:177 msgid "Kilometers" msgstr "" -#: netbox/dcim/choices.py:1988 netbox/netbox/choices.py:178 +#: netbox/dcim/choices.py:1990 netbox/netbox/choices.py:178 #: netbox/templates/dcim/cable_trace.html:65 msgid "Meters" msgstr "" -#: netbox/dcim/choices.py:1989 +#: netbox/dcim/choices.py:1991 msgid "Centimeters" msgstr "" -#: netbox/dcim/choices.py:1990 netbox/netbox/choices.py:179 +#: netbox/dcim/choices.py:1992 netbox/netbox/choices.py:179 msgid "Miles" msgstr "" -#: netbox/dcim/choices.py:1991 netbox/netbox/choices.py:180 +#: netbox/dcim/choices.py:1993 netbox/netbox/choices.py:180 #: netbox/templates/dcim/cable_trace.html:66 msgid "Feet" msgstr "" -#: netbox/dcim/choices.py:2039 +#: netbox/dcim/choices.py:2041 msgid "Redundant" msgstr "" -#: netbox/dcim/choices.py:2060 +#: netbox/dcim/choices.py:2062 msgid "Single phase" msgstr "" -#: netbox/dcim/choices.py:2061 +#: netbox/dcim/choices.py:2063 msgid "Three-phase" msgstr "" -#: netbox/dcim/choices.py:2077 netbox/extras/choices.py:53 +#: netbox/dcim/choices.py:2079 netbox/extras/choices.py:53 #: netbox/netbox/preferences.py:45 netbox/netbox/preferences.py:70 #: netbox/templates/extras/customfield/attrs/search_weight.html:1 #: netbox/vpn/choices.py:20 netbox/wireless/choices.py:27 msgid "Disabled" msgstr "" -#: netbox/dcim/choices.py:2078 +#: netbox/dcim/choices.py:2080 msgid "Faulty" msgstr "" @@ -4193,7 +4198,7 @@ msgstr "" #: netbox/extras/forms/model_forms.py:779 #: netbox/extras/forms/model_forms.py:831 netbox/extras/ui/panels.py:103 #: netbox/netbox/forms/bulk_import.py:27 netbox/netbox/forms/mixins.py:135 -#: netbox/netbox/tables/columns.py:500 +#: netbox/netbox/tables/columns.py:503 #: netbox/templates/circuits/inc/circuit_termination.html:29 #: netbox/templates/circuits/panels/circuit_circuit_termination.html:29 #: netbox/templates/generic/bulk_edit.html:78 @@ -5964,7 +5969,7 @@ msgstr "" #: netbox/dcim/models/cables.py:112 #: netbox/dcim/models/device_component_templates.py:63 #: netbox/dcim/models/device_components.py:61 -#: netbox/extras/models/customfields.py:138 +#: netbox/extras/models/customfields.py:139 msgid "label" msgstr "" @@ -5988,104 +5993,104 @@ msgstr "" msgid "cables" msgstr "" -#: netbox/dcim/models/cables.py:280 +#: netbox/dcim/models/cables.py:281 msgid "Must specify a unit when setting a cable length" msgstr "" -#: netbox/dcim/models/cables.py:283 +#: netbox/dcim/models/cables.py:284 msgid "Must define A and B terminations when creating a new cable." msgstr "" -#: netbox/dcim/models/cables.py:294 +#: netbox/dcim/models/cables.py:295 msgid "Cannot connect different termination types to same end of cable." msgstr "" -#: netbox/dcim/models/cables.py:302 +#: netbox/dcim/models/cables.py:303 #, python-brace-format msgid "Incompatible termination types: {type_a} and {type_b}" msgstr "" -#: netbox/dcim/models/cables.py:312 +#: netbox/dcim/models/cables.py:313 msgid "A and B terminations cannot connect to the same object." msgstr "" -#: netbox/dcim/models/cables.py:529 netbox/ipam/models/asns.py:38 +#: netbox/dcim/models/cables.py:530 netbox/ipam/models/asns.py:38 msgid "end" msgstr "" -#: netbox/dcim/models/cables.py:600 +#: netbox/dcim/models/cables.py:601 msgid "cable termination" msgstr "" -#: netbox/dcim/models/cables.py:601 +#: netbox/dcim/models/cables.py:602 msgid "cable terminations" msgstr "" -#: netbox/dcim/models/cables.py:614 +#: netbox/dcim/models/cables.py:615 #, python-brace-format msgid "" "Cannot connect a cable to {obj_parent} > {obj} because it is marked as " "connected." msgstr "" -#: netbox/dcim/models/cables.py:631 +#: netbox/dcim/models/cables.py:632 #, python-brace-format msgid "" "Duplicate termination found for {app_label}.{model} {termination_id}: cable " "{cable_pk}" msgstr "" -#: netbox/dcim/models/cables.py:641 +#: netbox/dcim/models/cables.py:642 #, python-brace-format msgid "Cables cannot be terminated to {type_display} interfaces" msgstr "" -#: netbox/dcim/models/cables.py:648 +#: netbox/dcim/models/cables.py:649 msgid "Circuit terminations attached to a provider network may not be cabled." msgstr "" -#: netbox/dcim/models/cables.py:680 +#: netbox/dcim/models/cables.py:681 msgid "" "Invalid cable termination: the assigned termination object does not exist." msgstr "" -#: netbox/dcim/models/cables.py:748 netbox/extras/models/configs.py:100 +#: netbox/dcim/models/cables.py:749 netbox/extras/models/configs.py:100 msgid "is active" msgstr "" -#: netbox/dcim/models/cables.py:752 +#: netbox/dcim/models/cables.py:753 msgid "is complete" msgstr "" -#: netbox/dcim/models/cables.py:756 +#: netbox/dcim/models/cables.py:757 msgid "is split" msgstr "" -#: netbox/dcim/models/cables.py:769 +#: netbox/dcim/models/cables.py:770 msgid "cable path" msgstr "" -#: netbox/dcim/models/cables.py:770 +#: netbox/dcim/models/cables.py:771 msgid "cable paths" msgstr "" -#: netbox/dcim/models/cables.py:857 +#: netbox/dcim/models/cables.py:858 msgid "All originating terminations must be attached to the same link" msgstr "" -#: netbox/dcim/models/cables.py:875 +#: netbox/dcim/models/cables.py:876 msgid "All mid-span terminations must have the same termination type" msgstr "" -#: netbox/dcim/models/cables.py:883 +#: netbox/dcim/models/cables.py:884 msgid "All mid-span terminations must have the same parent object" msgstr "" -#: netbox/dcim/models/cables.py:913 +#: netbox/dcim/models/cables.py:914 msgid "All links must be cable or wireless" msgstr "" -#: netbox/dcim/models/cables.py:915 +#: netbox/dcim/models/cables.py:916 msgid "All links must match first link type" msgstr "" @@ -6652,7 +6657,7 @@ msgid "module bays" msgstr "" #: netbox/dcim/models/device_components.py:1413 -#: netbox/dcim/models/modules.py:321 +#: netbox/dcim/models/modules.py:326 msgid "A module bay cannot belong to a module installed within it." msgstr "" @@ -6692,14 +6697,14 @@ msgid "inventory item roles" msgstr "" #: netbox/dcim/models/device_components.py:1602 -#: netbox/dcim/models/devices.py:552 netbox/dcim/models/modules.py:272 +#: netbox/dcim/models/devices.py:552 netbox/dcim/models/modules.py:277 #: netbox/dcim/models/racks.py:345 #: netbox/virtualization/models/virtualmachines.py:221 msgid "serial number" msgstr "" #: netbox/dcim/models/device_components.py:1610 -#: netbox/dcim/models/devices.py:560 netbox/dcim/models/modules.py:279 +#: netbox/dcim/models/devices.py:560 netbox/dcim/models/modules.py:284 #: netbox/dcim/models/racks.py:352 msgid "asset tag" msgstr "" @@ -6748,7 +6753,7 @@ msgstr "" msgid "manufacturers" msgstr "" -#: netbox/dcim/models/devices.py:85 netbox/dcim/models/modules.py:77 +#: netbox/dcim/models/devices.py:85 netbox/dcim/models/modules.py:79 #: netbox/dcim/models/racks.py:162 msgid "model" msgstr "" @@ -6758,11 +6763,11 @@ msgstr "" msgid "default platform" msgstr "" -#: netbox/dcim/models/devices.py:101 netbox/dcim/models/modules.py:81 +#: netbox/dcim/models/devices.py:101 netbox/dcim/models/modules.py:83 msgid "part number" msgstr "" -#: netbox/dcim/models/devices.py:104 netbox/dcim/models/modules.py:84 +#: netbox/dcim/models/devices.py:104 netbox/dcim/models/modules.py:86 msgid "Discrete part number (optional)" msgstr "" @@ -6797,7 +6802,7 @@ msgid "" msgstr "" #: netbox/dcim/models/devices.py:132 netbox/dcim/models/devices.py:605 -#: netbox/dcim/models/modules.py:87 netbox/dcim/models/racks.py:356 +#: netbox/dcim/models/modules.py:89 netbox/dcim/models/racks.py:356 msgid "airflow" msgstr "" @@ -6885,7 +6890,7 @@ msgstr "" msgid "Chassis serial number, assigned by the manufacturer" msgstr "" -#: netbox/dcim/models/devices.py:561 netbox/dcim/models/modules.py:280 +#: netbox/dcim/models/devices.py:561 netbox/dcim/models/modules.py:285 msgid "A unique tag used to identify this device" msgstr "" @@ -7083,7 +7088,7 @@ msgstr "" msgid "Numeric identifier unique to the parent device" msgstr "" -#: netbox/dcim/models/devices.py:1295 netbox/extras/models/customfields.py:263 +#: netbox/dcim/models/devices.py:1295 netbox/extras/models/customfields.py:264 #: netbox/extras/models/models.py:118 netbox/extras/models/models.py:887 #: netbox/netbox/models/__init__.py:154 netbox/netbox/models/__init__.py:193 #: netbox/netbox/models/__init__.py:243 @@ -7144,51 +7149,51 @@ msgstr "" msgid "Wireless role may be set only on wireless interfaces." msgstr "" -#: netbox/dcim/models/modules.py:43 netbox/extras/models/configs.py:50 +#: netbox/dcim/models/modules.py:45 netbox/extras/models/configs.py:50 msgid "schema" msgstr "" -#: netbox/dcim/models/modules.py:50 +#: netbox/dcim/models/modules.py:52 msgid "module type profile" msgstr "" -#: netbox/dcim/models/modules.py:51 +#: netbox/dcim/models/modules.py:53 msgid "module type profiles" msgstr "" -#: netbox/dcim/models/modules.py:96 +#: netbox/dcim/models/modules.py:98 msgid "attributes" msgstr "" -#: netbox/dcim/models/modules.py:153 +#: netbox/dcim/models/modules.py:155 msgid "module type" msgstr "" -#: netbox/dcim/models/modules.py:154 +#: netbox/dcim/models/modules.py:156 msgid "module types" msgstr "" -#: netbox/dcim/models/modules.py:184 +#: netbox/dcim/models/modules.py:189 #, python-brace-format msgid "Invalid schema: {error}" msgstr "" -#: netbox/dcim/models/modules.py:287 +#: netbox/dcim/models/modules.py:292 msgid "module" msgstr "" -#: netbox/dcim/models/modules.py:288 +#: netbox/dcim/models/modules.py:293 msgid "modules" msgstr "" -#: netbox/dcim/models/modules.py:301 +#: netbox/dcim/models/modules.py:306 #, python-brace-format msgid "" "Module must be installed within a module bay belonging to the assigned " "device ({device})." msgstr "" -#: netbox/dcim/models/modules.py:311 +#: netbox/dcim/models/modules.py:316 msgid "Cannot install a module in a disabled module bay." msgstr "" @@ -8286,22 +8291,23 @@ msgstr "" msgid "Changing the type of custom fields is not supported." msgstr "" -#: netbox/extras/api/serializers_/scripts.py:50 +#: netbox/extras/api/serializers_/scripts.py:45 +#: netbox/extras/api/serializers_/scripts.py:74 +msgid "A script module with this file name already exists." +msgstr "" + +#: netbox/extras/api/serializers_/scripts.py:57 #: netbox/extras/forms/scripts.py:91 netbox/extras/forms/scripts.py:100 #, python-brace-format msgid "Error loading script: {error}" msgstr "" -#: netbox/extras/api/serializers_/scripts.py:67 -msgid "A script module with this file name already exists." -msgstr "" - -#: netbox/extras/api/serializers_/scripts.py:147 -#: netbox/extras/api/serializers_/scripts.py:157 +#: netbox/extras/api/serializers_/scripts.py:158 +#: netbox/extras/api/serializers_/scripts.py:168 msgid "Scheduling is not enabled for this script." msgstr "" -#: netbox/extras/api/serializers_/scripts.py:149 +#: netbox/extras/api/serializers_/scripts.py:160 #: netbox/extras/forms/reports.py:45 netbox/extras/forms/scripts.py:62 msgid "Scheduled time must be in the future." msgstr "" @@ -8704,13 +8710,13 @@ msgstr "" #: netbox/extras/forms/bulk_edit.py:65 netbox/extras/forms/bulk_import.py:66 #: netbox/extras/forms/filtersets.py:99 -#: netbox/extras/models/customfields.py:247 netbox/extras/ui/panels.py:155 +#: netbox/extras/models/customfields.py:248 netbox/extras/ui/panels.py:155 msgid "UI visible" msgstr "" #: netbox/extras/forms/bulk_edit.py:70 netbox/extras/forms/bulk_import.py:72 #: netbox/extras/forms/filtersets.py:104 -#: netbox/extras/models/customfields.py:254 netbox/extras/ui/panels.py:156 +#: netbox/extras/models/customfields.py:255 netbox/extras/ui/panels.py:156 msgid "UI editable" msgstr "" @@ -9109,7 +9115,7 @@ msgid "Specify query parameters as a JSON object." msgstr "" #: netbox/extras/forms/model_forms.py:82 -#: netbox/extras/models/customfields.py:233 +#: netbox/extras/models/customfields.py:234 msgid "A JSON schema definition for validating the custom field value" msgstr "" @@ -9406,126 +9412,126 @@ msgstr "" msgid "Line: {lineno}" msgstr "" -#: netbox/extras/models/customfields.py:102 +#: netbox/extras/models/customfields.py:103 msgid "The object(s) to which this field applies." msgstr "" -#: netbox/extras/models/customfields.py:109 +#: netbox/extras/models/customfields.py:110 msgid "The type of data this custom field holds" msgstr "" -#: netbox/extras/models/customfields.py:116 +#: netbox/extras/models/customfields.py:117 msgid "The type of NetBox object this field maps to (for object fields)" msgstr "" -#: netbox/extras/models/customfields.py:122 +#: netbox/extras/models/customfields.py:123 msgid "Internal field name" msgstr "" -#: netbox/extras/models/customfields.py:126 +#: netbox/extras/models/customfields.py:127 msgid "Only alphanumeric characters and underscores are allowed." msgstr "" -#: netbox/extras/models/customfields.py:131 +#: netbox/extras/models/customfields.py:132 msgid "Double underscores are not permitted in custom field names." msgstr "" -#: netbox/extras/models/customfields.py:142 +#: netbox/extras/models/customfields.py:143 msgid "" "Name of the field as displayed to users (if not provided, 'the field's name " "will be used)" msgstr "" -#: netbox/extras/models/customfields.py:146 netbox/extras/models/models.py:339 +#: netbox/extras/models/customfields.py:147 netbox/extras/models/models.py:339 msgid "group name" msgstr "" -#: netbox/extras/models/customfields.py:149 +#: netbox/extras/models/customfields.py:150 msgid "Custom fields within the same group will be displayed together" msgstr "" -#: netbox/extras/models/customfields.py:157 +#: netbox/extras/models/customfields.py:158 msgid "required" msgstr "" -#: netbox/extras/models/customfields.py:159 +#: netbox/extras/models/customfields.py:160 msgid "" "This field is required when creating new objects or editing an existing " "object." msgstr "" -#: netbox/extras/models/customfields.py:162 +#: netbox/extras/models/customfields.py:163 msgid "must be unique" msgstr "" -#: netbox/extras/models/customfields.py:164 +#: netbox/extras/models/customfields.py:165 msgid "The value of this field must be unique for the assigned object" msgstr "" -#: netbox/extras/models/customfields.py:167 +#: netbox/extras/models/customfields.py:168 msgid "search weight" msgstr "" -#: netbox/extras/models/customfields.py:170 +#: netbox/extras/models/customfields.py:171 msgid "" "Weighting for search. Lower values are considered more important. Fields " "with a search weight of zero will be ignored." msgstr "" -#: netbox/extras/models/customfields.py:175 +#: netbox/extras/models/customfields.py:176 msgid "filter logic" msgstr "" -#: netbox/extras/models/customfields.py:179 +#: netbox/extras/models/customfields.py:180 msgid "" "Loose matches any instance of a given string; exact matches the entire field." msgstr "" -#: netbox/extras/models/customfields.py:182 +#: netbox/extras/models/customfields.py:183 msgid "default" msgstr "" -#: netbox/extras/models/customfields.py:186 +#: netbox/extras/models/customfields.py:187 msgid "" "Default value for the field (must be a JSON value). Encapsulate strings with " "double quotes (e.g. \"Foo\")." msgstr "" -#: netbox/extras/models/customfields.py:193 +#: netbox/extras/models/customfields.py:194 msgid "" "Filter the object selection choices using a query_params dict (must be a " "JSON value).Encapsulate strings with double quotes (e.g. \"Foo\")." msgstr "" -#: netbox/extras/models/customfields.py:199 +#: netbox/extras/models/customfields.py:200 msgid "display weight" msgstr "" -#: netbox/extras/models/customfields.py:200 +#: netbox/extras/models/customfields.py:201 msgid "Fields with higher weights appear lower in a form." msgstr "" -#: netbox/extras/models/customfields.py:207 +#: netbox/extras/models/customfields.py:208 msgid "minimum value" msgstr "" -#: netbox/extras/models/customfields.py:208 +#: netbox/extras/models/customfields.py:209 msgid "Minimum allowed value (for numeric fields)" msgstr "" -#: netbox/extras/models/customfields.py:215 +#: netbox/extras/models/customfields.py:216 msgid "maximum value" msgstr "" -#: netbox/extras/models/customfields.py:216 +#: netbox/extras/models/customfields.py:217 msgid "Maximum allowed value (for numeric fields)" msgstr "" -#: netbox/extras/models/customfields.py:222 +#: netbox/extras/models/customfields.py:223 msgid "validation regex" msgstr "" -#: netbox/extras/models/customfields.py:224 +#: netbox/extras/models/customfields.py:225 #, python-brace-format msgid "" "Regular expression to enforce on text field values. Use ^ and $ to force " @@ -9533,221 +9539,221 @@ msgid "" "values to exactly three uppercase letters." msgstr "" -#: netbox/extras/models/customfields.py:232 +#: netbox/extras/models/customfields.py:233 msgid "validation schema" msgstr "" -#: netbox/extras/models/customfields.py:239 +#: netbox/extras/models/customfields.py:240 msgid "choice set" msgstr "" -#: netbox/extras/models/customfields.py:248 +#: netbox/extras/models/customfields.py:249 msgid "Specifies whether the custom field is displayed in the UI" msgstr "" -#: netbox/extras/models/customfields.py:255 +#: netbox/extras/models/customfields.py:256 msgid "Specifies whether the custom field value can be edited in the UI" msgstr "" -#: netbox/extras/models/customfields.py:259 +#: netbox/extras/models/customfields.py:260 msgid "is cloneable" msgstr "" -#: netbox/extras/models/customfields.py:260 +#: netbox/extras/models/customfields.py:261 msgid "Replicate this value when cloning objects" msgstr "" -#: netbox/extras/models/customfields.py:280 +#: netbox/extras/models/customfields.py:281 msgid "custom field" msgstr "" -#: netbox/extras/models/customfields.py:281 +#: netbox/extras/models/customfields.py:282 msgid "custom fields" msgstr "" -#: netbox/extras/models/customfields.py:388 +#: netbox/extras/models/customfields.py:420 #, python-brace-format msgid "Invalid default value \"{value}\": {error}" msgstr "" -#: netbox/extras/models/customfields.py:395 +#: netbox/extras/models/customfields.py:427 msgid "A minimum value may be set only for numeric fields" msgstr "" -#: netbox/extras/models/customfields.py:397 +#: netbox/extras/models/customfields.py:429 msgid "A maximum value may be set only for numeric fields" msgstr "" -#: netbox/extras/models/customfields.py:407 +#: netbox/extras/models/customfields.py:439 msgid "Regular expression validation is supported only for text and URL fields" msgstr "" -#: netbox/extras/models/customfields.py:413 +#: netbox/extras/models/customfields.py:445 msgid "JSON schema validation is supported only for JSON fields" msgstr "" -#: netbox/extras/models/customfields.py:419 +#: netbox/extras/models/customfields.py:451 msgid "Uniqueness cannot be enforced for boolean fields" msgstr "" -#: netbox/extras/models/customfields.py:429 +#: netbox/extras/models/customfields.py:461 msgid "Selection fields must specify a set of choices." msgstr "" -#: netbox/extras/models/customfields.py:433 +#: netbox/extras/models/customfields.py:465 msgid "Choices may be set only on selection fields." msgstr "" -#: netbox/extras/models/customfields.py:440 +#: netbox/extras/models/customfields.py:472 msgid "Object fields must define an object type." msgstr "" -#: netbox/extras/models/customfields.py:444 +#: netbox/extras/models/customfields.py:476 #, python-brace-format msgid "{type} fields may not define an object type." msgstr "" -#: netbox/extras/models/customfields.py:451 +#: netbox/extras/models/customfields.py:483 msgid "A related object filter can be defined only for object fields." msgstr "" -#: netbox/extras/models/customfields.py:455 +#: netbox/extras/models/customfields.py:487 msgid "Filter must be defined as a dictionary mapping attributes to values." msgstr "" -#: netbox/extras/models/customfields.py:544 +#: netbox/extras/models/customfields.py:576 msgid "True" msgstr "" -#: netbox/extras/models/customfields.py:545 +#: netbox/extras/models/customfields.py:577 msgid "False" msgstr "" -#: netbox/extras/models/customfields.py:598 -#: netbox/extras/models/customfields.py:651 +#: netbox/extras/models/customfields.py:630 +#: netbox/extras/models/customfields.py:683 #, python-brace-format msgid "Values must match this regex: {regex}" msgstr "" -#: netbox/extras/models/customfields.py:753 -#: netbox/extras/models/customfields.py:760 +#: netbox/extras/models/customfields.py:785 +#: netbox/extras/models/customfields.py:792 msgid "Value must be a string." msgstr "" -#: netbox/extras/models/customfields.py:755 -#: netbox/extras/models/customfields.py:762 +#: netbox/extras/models/customfields.py:787 +#: netbox/extras/models/customfields.py:794 #, python-brace-format msgid "Value must match regex '{regex}'" msgstr "" -#: netbox/extras/models/customfields.py:767 +#: netbox/extras/models/customfields.py:799 msgid "Value must be an integer." msgstr "" -#: netbox/extras/models/customfields.py:770 -#: netbox/extras/models/customfields.py:785 +#: netbox/extras/models/customfields.py:802 +#: netbox/extras/models/customfields.py:817 #, python-brace-format msgid "Value must be at least {minimum}" msgstr "" -#: netbox/extras/models/customfields.py:774 -#: netbox/extras/models/customfields.py:789 +#: netbox/extras/models/customfields.py:806 +#: netbox/extras/models/customfields.py:821 #, python-brace-format msgid "Value must not exceed {maximum}" msgstr "" -#: netbox/extras/models/customfields.py:782 +#: netbox/extras/models/customfields.py:814 msgid "Value must be a decimal." msgstr "" -#: netbox/extras/models/customfields.py:794 +#: netbox/extras/models/customfields.py:826 msgid "Value must be true or false." msgstr "" -#: netbox/extras/models/customfields.py:802 +#: netbox/extras/models/customfields.py:834 msgid "Date values must be in ISO 8601 format (YYYY-MM-DD)." msgstr "" -#: netbox/extras/models/customfields.py:811 +#: netbox/extras/models/customfields.py:843 msgid "Date and time values must be in ISO 8601 format (YYYY-MM-DD HH:MM:SS)." msgstr "" -#: netbox/extras/models/customfields.py:818 +#: netbox/extras/models/customfields.py:850 #, python-brace-format msgid "Invalid choice ({value}) for choice set {choiceset}." msgstr "" -#: netbox/extras/models/customfields.py:828 +#: netbox/extras/models/customfields.py:860 #, python-brace-format msgid "Invalid choice(s) ({value}) for choice set {choiceset}." msgstr "" -#: netbox/extras/models/customfields.py:837 +#: netbox/extras/models/customfields.py:869 #, python-brace-format msgid "Value must be an object ID, not {type}" msgstr "" -#: netbox/extras/models/customfields.py:843 +#: netbox/extras/models/customfields.py:875 #, python-brace-format msgid "Value must be a list of object IDs, not {type}" msgstr "" -#: netbox/extras/models/customfields.py:847 +#: netbox/extras/models/customfields.py:879 #, python-brace-format msgid "Found invalid object ID: {id}" msgstr "" -#: netbox/extras/models/customfields.py:856 +#: netbox/extras/models/customfields.py:888 #, python-brace-format msgid "Value does not conform to the assigned schema: {error}" msgstr "" -#: netbox/extras/models/customfields.py:860 +#: netbox/extras/models/customfields.py:892 msgid "Required field cannot be empty." msgstr "" -#: netbox/extras/models/customfields.py:880 +#: netbox/extras/models/customfields.py:912 msgid "Base set of predefined choices (optional)" msgstr "" -#: netbox/extras/models/customfields.py:892 +#: netbox/extras/models/customfields.py:924 msgid "Choices are automatically ordered alphabetically" msgstr "" -#: netbox/extras/models/customfields.py:899 +#: netbox/extras/models/customfields.py:931 msgid "custom field choice set" msgstr "" -#: netbox/extras/models/customfields.py:900 +#: netbox/extras/models/customfields.py:932 msgid "custom field choice sets" msgstr "" -#: netbox/extras/models/customfields.py:960 +#: netbox/extras/models/customfields.py:992 msgid "Must define base or extra choices." msgstr "" -#: netbox/extras/models/customfields.py:966 +#: netbox/extras/models/customfields.py:998 msgid "Color mappings must be defined as a JSON object." msgstr "" -#: netbox/extras/models/customfields.py:978 +#: netbox/extras/models/customfields.py:1010 #, python-brace-format msgid "Duplicate value '{value}' found in extra choices." msgstr "" -#: netbox/extras/models/customfields.py:995 +#: netbox/extras/models/customfields.py:1027 #, python-brace-format msgid "" "Color mappings must reference an existing choice value. Invalid value(s): " "{values}." msgstr "" -#: netbox/extras/models/customfields.py:1002 +#: netbox/extras/models/customfields.py:1034 #, python-brace-format msgid "Invalid color value(s): {colors}. Use a supported named color." msgstr "" -#: netbox/extras/models/customfields.py:1025 +#: netbox/extras/models/customfields.py:1057 #, python-brace-format msgid "" "Cannot remove choice {choice} as there are {model} objects which reference " @@ -13262,7 +13268,21 @@ msgstr "" msgid "Toggle all" msgstr "" -#: netbox/netbox/tables/columns.py:321 +#: netbox/netbox/tables/columns.py:252 +#: netbox/templates/dcim/inc/panels/inventory_items.html:21 +#: netbox/templates/dcim/panels/component_inventory_items.html:11 +#: netbox/templates/dcim/virtualchassis_add_member.html:27 +#: netbox/templates/dcim/virtualchassis_edit.html:69 +#: netbox/templates/extras/inc/script_list_content.html:36 +#: netbox/templates/generic/object_edit.html:80 +#: netbox/templates/ipam/inc/panels/fhrp_groups.html:27 +#: netbox/templates/ipam/panels/fhrp_groups.html:13 +#: netbox/users/forms/filtersets.py:64 netbox/users/forms/model_forms.py:386 +#: netbox/users/forms/model_forms.py:428 netbox/users/ui/panels.py:50 +msgid "Actions" +msgstr "" + +#: netbox/netbox/tables/columns.py:324 #: netbox/templates/inc/table_controls_htmx.html:41 msgid "Toggle Dropdown" msgstr "" @@ -13815,6 +13835,7 @@ msgstr "" msgid "New Value" msgstr "" +#: netbox/templates/core/configrevision_restore.html:39 #: netbox/templates/core/configrevision_restore.html:50 msgid "Changed" msgstr "" @@ -14530,6 +14551,10 @@ msgstr "" msgid "Wireless Link" msgstr "" +#: netbox/templates/dcim/panels/interface_wireless.html:9 +msgid "Attribute" +msgstr "" + #: netbox/templates/dcim/panels/interface_wireless.html:24 #: netbox/templates/wireless/panels/wirelesslink_interface.html:24 msgid "Channel" @@ -14647,13 +14672,6 @@ msgstr "" msgid "Add New Member" msgstr "" -#: netbox/templates/dcim/virtualchassis_add_member.html:27 -#: netbox/templates/generic/object_edit.html:80 -#: netbox/users/forms/filtersets.py:64 netbox/users/forms/model_forms.py:386 -#: netbox/users/forms/model_forms.py:428 netbox/users/ui/panels.py:50 -msgid "Actions" -msgstr "" - #: netbox/templates/dcim/virtualchassis_add_member.html:29 msgid "Save & Add Another" msgstr "" @@ -16692,11 +16710,11 @@ msgstr "" msgid "Created background job {id}: {name}" msgstr "" -#: netbox/utilities/jsonschema.py:162 +#: netbox/utilities/jsonschema.py:167 msgid "Invalid JSON schema definition" msgstr "" -#: netbox/utilities/jsonschema.py:167 +#: netbox/utilities/jsonschema.py:172 #, python-brace-format msgid "Invalid JSON schema definition: {error}" msgstr ""