diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po
index 6e42d13b5d..13c23e65e3 100644
--- a/InvenTree/locale/de/LC_MESSAGES/django.po
+++ b/InvenTree/locale/de/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:28\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:58\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Language: de_DE\n"
@@ -34,8 +34,8 @@ msgstr "Keine passende Aktion gefunden"
msgid "Enter date"
msgstr "Datum eingeben"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Bestätigen"
@@ -103,12 +103,12 @@ msgstr "Ungültige Gruppe: {g}"
#: InvenTree/helpers.py:510
#, python-brace-format
msgid "Invalid group {group}"
-msgstr ""
+msgstr "Ungültige Gruppe {group}"
#: InvenTree/helpers.py:516
#, python-brace-format
msgid "Invalid/no group {group}"
-msgstr ""
+msgstr "Ungültige/Keine Gruppe {group}"
#: InvenTree/helpers.py:522
msgid "No serial numbers found"
@@ -157,8 +157,8 @@ msgstr "Kommentar"
msgid "File comment"
msgstr "Datei-Kommentar"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Ungültige Auswahl"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Name"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Muss eine gültige Nummer sein"
msgid "Filename"
msgstr "Dateiname"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Deutsch"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Griechisch"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Englisch"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Spanisch"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr "Spanisch (Mexikanisch)"
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Französisch"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Hebräisch"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Italienisch"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Japanisch"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Koreanisch"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Niederländisch"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Norwegisch"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Polnisch"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr "Portugiesisch"
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Russisch"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Schwedisch"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Thailändisch"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Türkisch"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Vietnamesisch"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Chinesisch"
@@ -457,7 +457,7 @@ msgstr "Unterobjekt geteilt"
#: InvenTree/status_codes.py:294 templates/js/translated/stock.js:2064
msgid "Merged stock items"
-msgstr ""
+msgstr "Lagerartikel zusammengeführt"
#: InvenTree/status_codes.py:296 templates/js/translated/table_filters.js:213
msgid "Sent to customer"
@@ -565,27 +565,27 @@ msgstr "Keine passende Lagerartikel gefunden"
#: barcodes/api.py:191
msgid "Barcode already matches Stock Item"
-msgstr ""
+msgstr "Barcode entspricht bereits einem Lagerartikel"
#: barcodes/api.py:195
msgid "Barcode already matches Stock Location"
-msgstr ""
+msgstr "Barcode entspricht bereits Lagerort"
#: barcodes/api.py:199
msgid "Barcode already matches Part"
-msgstr ""
+msgstr "Barcode entspricht bereits Teil"
#: barcodes/api.py:205 barcodes/api.py:217
msgid "Barcode hash already matches Stock Item"
-msgstr ""
+msgstr "Barcode-Hash entspricht bereits einem Lagerartikel"
#: barcodes/api.py:223
msgid "Barcode associated with Stock Item"
-msgstr ""
+msgstr "Barcode Lagerartikel zugeordnet"
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr "Anlage von Endprodukt(en) bestätigen"
msgid "Confirm deletion of build output"
msgstr "Löschen des Endprodukt bestätigen"
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr "Bauauftrag als vollständig markieren"
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "Abbruch bestätigen"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr "Bauabbruch bestätigen"
@@ -660,7 +656,7 @@ msgstr "Ungültige Wahl für übergeordneten Bauauftrag"
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "Bauauftrag"
@@ -683,7 +679,7 @@ msgstr "Bauauftragsreferenz"
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "Referenz"
@@ -718,9 +714,9 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "Auftrag Referenz"
msgid "SalesOrder to which this build is allocated"
msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist"
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "Quell-Lagerort"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Zieldatum für Bauauftrag-Fertigstellung."
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "Fertigstellungsdatum"
@@ -815,7 +811,7 @@ msgstr "Fertigstellungsdatum"
msgid "completed by"
msgstr "Fertiggestellt von"
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr "Aufgegeben von"
@@ -828,7 +824,7 @@ msgstr "Nutzer der diesen Bauauftrag erstellt hat"
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr "Verantwortlicher Benutzer"
@@ -840,7 +836,7 @@ msgstr "Nutzer der für diesen Bauauftrag zuständig ist"
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "Externer Link"
@@ -904,8 +900,8 @@ msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein"
msgid "Selected stock item not found in BOM"
msgstr "Ausgewähltes Bestands-Objekt nicht in Stückliste für Teil '{p}' gefunden"
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr "Bauauftrag"
@@ -914,13 +910,13 @@ msgstr "Bauauftrag"
msgid "Build to allocate parts"
msgstr "Bauauftrag starten um Teile zuzuweisen"
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr "Installiere in"
msgid "Destination stock item"
msgstr "Ziel-Lagerartikel"
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr "Endprodukt"
@@ -967,10 +963,10 @@ msgstr "Dieses Endprodukt ist nicht vollständig zugewiesen"
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr "Lagerort für fertige Endprodukte"
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "Status"
msgid "A list of build outputs must be provided"
msgstr "Eine Liste von Endprodukten muss angegeben werden"
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen"
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt"
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr "Stücklisten-Position"
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr "Endprodukt"
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen"
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part muss auf dasselbe Teil verweisen wie der Bauauftrag"
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr "Teil muss auf Lager sein"
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr "Anzahl muss größer Null sein"
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Verfügbare Menge ({q}) überschritten"
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Für Zuweisung von verfolgten Teilen muss ein Endprodukt angegeben sein"
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Endprodukt kann bei Zuweisung nicht-verfolgter Teile nicht angegeben werden"
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr "Zuweisungen müssen angegeben werden"
@@ -1073,7 +1097,6 @@ msgstr "Bauauftrag löschen"
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr "Bauauftrag fertigstellen"
@@ -1112,7 +1135,7 @@ msgstr "Bestand wurde Bauauftrag noch nicht vollständig zugewiesen"
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr "Zieldatum"
@@ -1135,7 +1158,7 @@ msgstr "Überfällig"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Fertig"
@@ -1146,7 +1169,7 @@ msgstr "Fertig"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "Auftrag"
@@ -1189,26 +1212,6 @@ msgstr "Seriennummeren für mehrere einzelne Endprodukte angeben"
msgid "Are you sure you wish to cancel this build?"
msgstr "Sind Sie sicher, dass sie diesen Bauauftrag abbrechen möchten?"
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr "Bauauftrag ist vollständig"
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr "Bauauftrag ist unvollständig"
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr "unfertige Endprodukte vorhanden"
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt"
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen"
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr "Bau-Status"
@@ -1230,12 +1233,12 @@ msgstr "Ziel-Lager"
msgid "Destination location not specified"
msgstr "Ziel-Lagerort nicht angegeben"
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr "Zugewiesene Teile"
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr "Losnummer"
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr "Erstellt"
@@ -1265,7 +1268,7 @@ msgstr "Unter-Bauaufträge"
msgid "Allocate Stock to Build"
msgstr "Bestand Bauauftrag zuweisen"
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr "Bestandszuordnung aufheben"
@@ -1446,19 +1449,7 @@ msgstr "Endprodukt muss angegeben sein"
msgid "Build output deleted"
msgstr "Endprodukt gelöscht"
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr "Bauauftrag fertigstellen"
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr "Bauauftrag kann nicht abgeschlossen werden, es gibt noch unvollständige Endprodukte"
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr "Bauauftrag fertiggestellt"
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr "Bauauftrag löschen"
@@ -1499,728 +1490,724 @@ msgstr "{name.title()} Datei"
msgid "Select {name} file to upload"
msgstr "{name} Datei zum Hochladen auswählen"
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr "Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird nicht beachtet)"
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr "Einstellungs-Wert"
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr "Nur Ganzzahl eingeben"
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr "Wert ist keine gültige Option"
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr "Wahrheitswert erforderlich"
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr "Nur Ganzzahl eingeben"
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr "Schlüsseltext muss eindeutig sein"
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr "Keine Gruppe"
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr "Neustart erforderlich"
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr "Eine Einstellung wurde geändert, die einen Neustart des Servers erfordert"
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr "InvenTree Instanzname"
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr "Kurze Beschreibung der Instanz"
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr "Name der Instanz verwenden"
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr "Den Namen der Instanz in der Titelleiste verwenden"
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr "Firmenname"
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr "interner Firmenname"
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr "Basis-URL"
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr "Basis-URL für dieses Instanz"
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr "Standardwährung"
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr "Standardwährung"
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr "Von URL herunterladen"
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr "Herunterladen von externen Bildern und Dateien von URLs erlaubt"
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr "Bacode-Feature verwenden"
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr "Barcode-Scanner Unterstützung"
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr "IPN Regex"
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr "RegEx Muster für die Zuordnung von Teil-IPN"
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr "Mehrere Artikel mit gleicher IPN erlaubt"
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr "Mehrere Artikel mit gleicher IPN erlaubt"
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr "Ändern von IPN erlaubt"
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr "Ändern der IPN während des Bearbeiten eines Teils erlaubt"
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr "Teil-Stückliste kopieren"
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr "Stückliste von Teil kopieren wenn das Teil dupliziert wird "
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr "Teil-Parameter kopieren"
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr "Parameter-Daten für dieses Teil kopieren wenn das Teil dupliziert wird"
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr "Teil-Testdaten kopieren"
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr "Test-Daten für dieses Teil kopieren wenn das Teil dupliziert wird"
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr "Kategorie-Parametervorlage kopieren"
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird"
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr "Vorlage"
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr "Teile sind standardmäßig Vorlagen"
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr "Baugruppe"
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr "Teile können standardmäßig aus anderen Teilen angefertigt werden"
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr "Komponente"
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr "Teile können standardmäßig in Baugruppen benutzt werden"
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr "Kaufbar"
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr "Artikel sind grundsätzlich kaufbar"
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr "Verkäuflich"
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr "Artikel sind grundsätzlich verkaufbar"
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr "Nachverfolgbar"
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr "Artikel sind grundsätzlich verfolgbar"
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr "Virtuell"
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr "Teile sind grundsätzlich virtuell"
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr "Import in Ansichten anzeigen"
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr "Importassistent in einigen Teil-Ansichten anzeigen"
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr "Preis in Formularen anzeigen"
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr "Teilpreis in einigen Formularen anzeigen"
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr "Preis in Stückliste anzeigen"
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr "Preisinformationen in Stücklisten Tabellen einbeziehen"
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr "Verwandte Teile anzeigen"
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr "Verwandte Teile eines Teils anzeigen"
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr "Ausgangsbestand erstellen"
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr "Ausgangsbestand beim Erstellen von Teilen erstellen"
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr "Interne Preise"
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr "Interne Preise für Teile aktivieren"
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr "Interner Preis als Stückliste-Preis"
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr "Interner Preis (falls vorhanden) in Stücklisten-Preisberechnungen verwenden"
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr "Anzeigeformat für Teilenamen"
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr "Format für den Namen eines Teiles"
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr "Berichte aktivieren"
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr "Berichterstellung aktivieren"
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr "Entwickler-Modus"
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr "Berichte im Entwickler-Modus generieren (als HTML)"
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr "Seitengröße"
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr "Standardseitenformat für PDF-Bericht"
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr "Test-Berichte"
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr "Erstellung von Test-Berichten aktivieren"
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr "Bestands-Ablauf"
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr "Ablaufen von Bestand ermöglichen"
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr "Abgelaufenen Bestand verkaufen"
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr "Verkauf von abgelaufenem Bestand erlaubt"
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr "Bestands-Stehzeit"
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr "Anzahl an Tagen, an denen Bestand als abgestanden markiert wird, bevor sie ablaufen"
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr "Tage"
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr "Abgelaufenen Bestand verbauen"
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr "Verbauen von abgelaufenen Bestand erlaubt"
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr "Bestands-Eigentümerkontrolle"
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr "Eigentümerkontrolle für Lagerorte und Teile aktivieren"
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr "Gruppieren nach Teil"
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr "Bestand in Tabellen anhand von Teil-Referenz gruppieren"
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr "Bauauftrag-Referenz Präfix"
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr "Präfix für Bauauftrag-Referenz"
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr "Bauauftrag-Referenz RegEx"
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr "RegEx Muster für die Zuordnung von Bauauftrag-Referenzen"
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr "Auftrags-Referenz Präfix"
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr "Präfix für Auftrags-Referenz"
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr "Bestellungs-Referenz Präfix"
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr "Präfix für Bestellungs-Referenz"
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr "Passwort vergessen aktivieren"
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr "Passwort-vergessen-Funktion auf den Anmeldeseiten aktivieren"
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr "Anmeldung erlauben"
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr "Selbstregistrierung für Benutzer auf den Anmeldeseiten aktivieren"
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr "SSO aktivieren"
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr "SSO auf den Anmeldeseiten aktivieren"
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr "Email-Adresse erforderlich"
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr "Benutzer müssen bei der Registrierung eine E-Mail angeben"
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr "SSO-Benutzer automatisch ausfüllen"
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Benutzer-Details automatisch aus SSO-Konto ausfüllen"
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr "E-Mail zweimal"
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr "Bei der Registrierung den Benutzer zweimal nach der E-Mail-Adresse fragen"
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr "Passwort zweimal"
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr "Bei der Registrierung den Benutzer zweimal nach dem Passwort fragen"
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr "Gruppe bei Registrierung"
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr "Gruppe der neue Benutzer bei der Registrierung zugewiesen werden"
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
-msgstr ""
+msgstr "MFA erzwingen"
+
+#: common/models.py:956
+msgid "Users must use multifactor security."
+msgstr "Benutzer müssen Multifaktor-Authentifizierung verwenden."
+
+#: common/models.py:961
+msgid "Enable URL integration"
+msgstr "URL-Integration aktivieren"
#: common/models.py:962
-msgid "Users must use multifactor security."
-msgstr ""
-
-#: common/models.py:967
-msgid "Enable URL integration"
-msgstr ""
-
-#: common/models.py:968
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr "Abonnierte Teile anzeigen"
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr "Zeige abonnierte Teile auf der Startseite"
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr "Abonnierte Kategorien anzeigen"
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr "Zeige abonnierte Teilkategorien auf der Startseite"
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr "Neueste Teile anzeigen"
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr "Zeige neueste Teile auf der Startseite"
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr "Aktuelle Teile-Stände"
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr "Anzahl der neusten Teile auf der Startseite"
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr "Nicht validierte Stücklisten anzeigen"
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr "Zeige Stücklisten, die noch nicht validiert sind, auf der Startseite"
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr "Neueste Bestandänderungen anzeigen"
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr "Zeige zuletzt geänderte Lagerbestände auf der Startseite"
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr "aktueller Bestand"
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr "Anzahl des geänderten Bestands auf der Startseite"
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr "Niedrigen Bestand anzeigen"
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr "Zeige geringen Bestand auf der Startseite"
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr "Lerren Bestand anzeigen"
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr "Zeige aufgebrauchte Lagerartikel auf der Startseite"
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr "Benötigten Bestand anzeigen"
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr "Zeige Bestand für Bauaufträge auf der Startseite"
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr "Abgelaufenen Bestand anzeigen"
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr "Zeige abgelaufene Lagerbestände auf der Startseite"
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr "Alten Bestand anzeigen"
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr "Zeige überfällige Lagerartikel auf der Startseite"
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr "Ausstehende Bauaufträge anzeigen"
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr "Zeige ausstehende Bauaufträge auf der Startseite"
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr "Zeige überfällige Bauaufträge"
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr "Zeige überfällige Bauaufträge auf der Startseite"
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr "Ausstehende POs anzeigen"
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr "Zeige ausstehende POs auf der Startseite"
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr "Überfällige POs anzeigen"
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr "Zeige überfällige POs auf der Startseite"
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr "Ausstehende SOs anzeigen"
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr "Zeige ausstehende SOs auf der Startseite"
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr "Überfällige SOs anzeigen"
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr "Zeige überfällige SOs auf der Startseite"
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr "Label inline anzeigen"
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "PDF-Labels im Browser anzeigen, anstatt als Datei herunterzuladen"
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr "Berichte inline anzeigen"
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "PDF-Berichte im Browser anzeigen, anstatt als Datei herunterzuladen"
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr "Anzahl Suchergebnisse"
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr "Anzahl der Ergebnisse, die in der Vorschau angezeigt werden sollen"
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr "Suche Bestand anzeigen"
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr "Bestand in Suchvorschau anzeigen"
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr "Inaktive Teile ausblenden"
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr "Inaktive Teile in der Suchvorschau ausblenden"
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr "zeige Bestand in Eingabemasken"
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr "Zeige den verfügbaren Bestand in einigen Eingabemasken"
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr "Esc-Taste schließt Formulare"
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr "Benutze die Esc-Taste, um Formulare zu schließen"
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr "Fixierter Navigationsleiste"
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr "Position der InvenTree Navigationsleiste am oberen Bildschirmrand fixieren"
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr "Preisstaffelungs Anzahl"
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr "Preis"
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr "Stückpreis für die angegebene Anzahl"
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr "Standard-Währung für diese Firma"
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr "Basisteil"
@@ -2377,7 +2364,7 @@ msgstr "Teil auswählen"
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr "Teilbeschreibung des Herstellers"
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr "Herstellerteil"
@@ -2433,7 +2420,7 @@ msgstr "Parameterwert"
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr "Einheiten"
@@ -2450,7 +2437,7 @@ msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren"
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr "Mindestpreis"
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr "Verpackungen"
@@ -2570,7 +2557,7 @@ msgstr "Bild von URL herunterladen"
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr "Neuer Auftrag"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr "Zugeordneter Bestand"
@@ -2763,7 +2750,7 @@ msgstr "Zuliefererteil entfernen"
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr "Löschen"
@@ -2816,7 +2803,7 @@ msgstr "Zugewiesene Lagerartikel"
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr "Zuliefererteil"
@@ -3153,19 +3140,19 @@ msgstr "Versand von"
#: order/models.py:635
msgid "Order cannot be completed as no parts have been assigned"
-msgstr ""
+msgstr "Auftrag kann nicht abgeschlossen werden, da keine Teile zugewiesen wurden"
#: order/models.py:639
msgid "Only a pending order can be marked as complete"
-msgstr ""
+msgstr "Nur ein ausstehender Auftrag kann als abgeschlossen markiert werden"
#: order/models.py:642
msgid "Order cannot be completed as there are incomplete shipments"
-msgstr ""
+msgstr "Auftrag kann nicht abgeschlossen werden, da unvollständige Sendungen vorhanden sind"
#: order/models.py:645
msgid "Order cannot be completed as there are incomplete line items"
-msgstr ""
+msgstr "Auftrag kann nicht abgeschlossen werden, da es unvollständige Positionen gibt"
#: order/models.py:797
msgid "Item quantity"
@@ -3187,7 +3174,7 @@ msgstr "Bestellung"
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr "Empfangene Objekt-Anzahl"
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr "Preis"
@@ -3233,43 +3220,43 @@ msgstr "Stückverkaufspreis"
#: order/models.py:942
msgid "Shipped quantity"
-msgstr ""
+msgstr "Versendete Menge"
#: order/models.py:1029
msgid "Date of shipment"
-msgstr ""
+msgstr "Versanddatum"
#: order/models.py:1036
msgid "Checked By"
-msgstr ""
+msgstr "Kontrolliert von"
#: order/models.py:1037
msgid "User who checked this shipment"
-msgstr ""
+msgstr "Benutzer, der diese Sendung kontrolliert hat"
#: order/models.py:1045
msgid "Shipment number"
-msgstr ""
+msgstr "Sendungsnummer"
#: order/models.py:1052
msgid "Shipment notes"
-msgstr ""
+msgstr "Versandhinweise"
#: order/models.py:1059
msgid "Tracking Number"
-msgstr ""
+msgstr "Sendungsverfolgungsnummer"
#: order/models.py:1060
msgid "Shipment tracking information"
-msgstr ""
+msgstr "Informationen zur Sendungsverfolgung"
#: order/models.py:1070
msgid "Shipment has already been sent"
-msgstr ""
+msgstr "Sendung wurde bereits versandt"
#: order/models.py:1073
msgid "Shipment has no allocated stock items"
-msgstr ""
+msgstr "Sendung hat keine zugewiesene Lagerartikel"
#: order/models.py:1149 order/models.py:1151
msgid "Stock item has not been assigned"
@@ -3297,11 +3284,11 @@ msgstr "Anzahl für serialisierte Lagerartikel muss 1 sein"
#: order/models.py:1173
msgid "Sales order does not match shipment"
-msgstr ""
+msgstr "Auftrag gehört nicht zu Sendung"
#: order/models.py:1174
msgid "Shipment does not match sales order"
-msgstr ""
+msgstr "Sendung gehört nicht zu Auftrag"
#: order/models.py:1182
msgid "Line"
@@ -3310,11 +3297,11 @@ msgstr "Position"
#: order/models.py:1190 order/serializers.py:825 order/serializers.py:953
#: templates/js/translated/model_renderers.js:251
msgid "Shipment"
-msgstr ""
+msgstr "Sendung"
#: order/models.py:1191
msgid "Sales order shipment reference"
-msgstr ""
+msgstr "Sendungsnummer-Referenz"
#: order/models.py:1203
msgid "Item"
@@ -3374,35 +3361,35 @@ msgstr "Verkaufspreis-Währung"
#: order/serializers.py:649
msgid "No shipment details provided"
-msgstr ""
+msgstr "Keine Sendungsdetails angegeben"
#: order/serializers.py:699 order/serializers.py:802
msgid "Line item is not associated with this order"
-msgstr ""
+msgstr "Position ist nicht diesem Auftrag zugeordnet"
#: order/serializers.py:721
msgid "Quantity must be positive"
-msgstr ""
+msgstr "Anzahl muss positiv sein"
#: order/serializers.py:815
msgid "Enter serial numbers to allocate"
-msgstr ""
+msgstr "Seriennummern zum Zuweisen eingeben"
#: order/serializers.py:839 order/serializers.py:964
msgid "Shipment has already been shipped"
-msgstr ""
+msgstr "Sendung wurde bereits versandt"
#: order/serializers.py:842 order/serializers.py:967
msgid "Shipment is not associated with this order"
-msgstr ""
+msgstr "Sendung ist nicht diesem Auftrag zugeordnet"
#: order/serializers.py:894
msgid "No match found for the following serial numbers"
-msgstr ""
+msgstr "Folgende Serienummern konnten nicht gefunden werden"
#: order/serializers.py:904
msgid "The following serial numbers are already allocated"
-msgstr ""
+msgstr "Folgende Seriennummern sind bereits zugewiesen"
#: order/templates/order/delete_attachment.html:5
#: stock/templates/stock/attachment_delete.html:5
@@ -3460,13 +3447,13 @@ msgstr "Bestellstatus"
#: order/templates/order/order_base.html:124
#: order/templates/order/sales_order_base.html:128
msgid "Completed Line Items"
-msgstr ""
+msgstr "Abgeschlossene Positionen"
#: order/templates/order/order_base.html:130
#: order/templates/order/sales_order_base.html:134
#: order/templates/order/sales_order_base.html:144
msgid "Incomplete"
-msgstr ""
+msgstr "Unvollständig"
#: order/templates/order/order_base.html:149
#: report/templates/report/inventree_build_order_base.html:122
@@ -3549,7 +3536,7 @@ msgstr "Auswahl duplizieren"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3702,7 +3689,7 @@ msgstr "Paketliste drucken"
#: order/templates/order/sales_order_base.html:66
#: order/templates/order/sales_order_base.html:229
msgid "Complete Sales Order"
-msgstr ""
+msgstr "Auftrag abschließen"
#: order/templates/order/sales_order_base.html:102
msgid "This Sales Order has not been fully allocated"
@@ -3717,7 +3704,7 @@ msgstr "Kundenreferenz"
#: order/templates/order/sales_order_detail.html:78
#: order/templates/order/so_sidebar.html:11
msgid "Completed Shipments"
-msgstr ""
+msgstr "Abgeschlossene Sendungen"
#: order/templates/order/sales_order_base.html:215
msgid "Edit Sales Order"
@@ -3739,16 +3726,16 @@ msgstr "Auftrags-Positionen"
#: order/templates/order/sales_order_detail.html:44
#: order/templates/order/so_sidebar.html:8
msgid "Pending Shipments"
-msgstr ""
+msgstr "Ausstehende Sendungen"
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr "Aktionen"
#: order/templates/order/sales_order_detail.html:57
msgid "New Shipment"
-msgstr ""
+msgstr "Neue Sendung"
#: order/views.py:99
msgid "Cancel Order"
@@ -3965,7 +3952,7 @@ msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern"
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr "Kategorie"
@@ -4045,7 +4032,7 @@ msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?"
msgid "Can this part be sold to customers?"
msgstr "Kann dieses Teil an Kunden verkauft werden?"
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr "Ausgangsteil"
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr "Parameter Vorlage"
@@ -4173,7 +4160,7 @@ msgstr "Wert"
msgid "Parameter Value"
msgstr "Parameter Wert"
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr "Standard-Wert"
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr "Benachrichtigungen für dieses Teil abonnieren"
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr "Barcode Aktionen"
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr "QR-Code anzeigen"
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr "Label drucken"
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr "Kosteninformationen ansehen"
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr "Bestands-Aktionen"
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr "letzte Seriennummer"
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr "Nach Seriennummer suchen"
@@ -5069,7 +5056,7 @@ msgstr "Neue Teilevariante anlegen"
msgid "Create a new variant of template '%(full_name)s'."
msgstr "Neue Variante von Vorlage anlegen '%(full_name)s'."
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr "Unbekannte Datenbank"
@@ -5174,38 +5161,42 @@ msgstr "Interne Preisspanne bearbeiten"
msgid "Delete Internal Price Break"
msgstr "Interne Preisspanne löschen"
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5214,36 +5205,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5344,9 +5359,9 @@ msgid "Stock Item Test Report"
msgstr "Lagerartikel Test-Bericht"
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5398,7 +5413,7 @@ msgid "Quantity is required"
msgstr "Menge ist erforderlich"
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr "Ablaufdatum"
@@ -5448,7 +5463,7 @@ msgid "Confirm removal of installed stock items"
msgstr "Entfernen der verbauten Lagerartikel bestätigen"
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr "Besitzer"
@@ -5510,7 +5525,7 @@ msgstr "Wo wird dieses Teil normalerweise gelagert?"
msgid "Packaging this stock item is stored in"
msgstr "Die Verpackung dieses Lagerartikel ist gelagert in"
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr "verbaut in"
@@ -5786,7 +5801,7 @@ msgstr "Dieser Lagerartikel hat keine Kinder"
msgid "Test Data"
msgstr "Testdaten"
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr "Test-Bericht"
@@ -5818,189 +5833,189 @@ msgstr "Testergebnis bearbeiten"
msgid "Delete Test Result"
msgstr "Testergebnis löschen"
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr "Barcode abhängen"
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr "Barcode anhängen"
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr "zu Lagerort einscannen"
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr "Druck Aktionen"
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr "Bestands-Anpassungs Aktionen"
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr "Bestand zählen"
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr "Bestand hinzufügen"
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr "Bestand entfernen"
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr "Bestand serialisieren"
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr "Bestand verschieben"
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr "Kunden zuweisen"
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr "zu Bestand zurückgeben"
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr "Lagerartikel deinstallieren"
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr "Deinstallieren"
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr "Lagerartikel installieren"
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr "Installieren"
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr "in Variante ändern"
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr "Lagerartikel duplizieren"
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr "Lagerartikel bearbeiten"
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr "Lagerartikel löschen"
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr "vorherige Seite"
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr "Zur vorherigen Seriennummer wechseln"
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr "nächste Seite"
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr "Zur nächsten Seriennummer wechseln"
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr "Dieser Lagerartikel lief am %(item.expiry_date)s ab"
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr "abgelaufen"
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr "Dieser Lagerartikel läuft am %(item.expiry_date)s ab"
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr "überfällig"
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr "Zuletzt aktualisiert"
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr "Letzte Inventur"
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr "Keine Inventur ausgeführt"
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr "Sie gehören nicht zu den Eigentümern dieses Objekts und können es nicht ändern."
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr "Dieser Lagerartikel wird gerade hergestellt und kann nicht geändert werden."
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr "Ändern des Lagerartikel in der Bauauftrag-Ansicht."
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr "Dieser Lagerartikel hat nicht alle Tests bestanden"
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr "Diesesr Lagerartikel ist serialisiert. Es hat eine eindeutige Seriennummer und die Anzahl kann nicht angepasst werden."
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr "Kein Lagerort gesetzt"
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr "Barcode-Bezeichner"
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr "Elternposition"
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr "Kein Hersteller ausgewählt"
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr "Tests"
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr "Bestandsstatus bearbeiten"
@@ -6419,7 +6434,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6534,41 +6549,45 @@ msgstr "Bestellungs-Einstellungen"
msgid "Report Settings"
msgstr "Berichts-Einstellungen"
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr "Kein Wert angegeben"
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr "Einstellungen ändern"
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr "Allgemeine Einstellungen bearbeiten"
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr "Benutzereinstellungen bearbeiten"
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr "Keine Kategorie-Parametervorlagen gefunden"
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr "Vorlage bearbeiten"
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr "Vorlage löschen"
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr "Keine Teilparametervorlagen gefunden"
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr "ID"
@@ -6883,8 +6902,8 @@ msgstr "InvenTree-Versionsinformationen"
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Schliessen"
@@ -7131,15 +7150,15 @@ msgstr "Link hinzufügen"
msgid "Add Attachment"
msgstr "Anhang hinzufügen"
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr "Server-Neustart erforderlich"
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr "Eine Konfigurationsoption wurde geändert, die einen Neustart des Servers erfordert"
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr "Bitte kontaktieren Sie Ihren Administrator für mehr Informationen"
@@ -7167,8 +7186,8 @@ msgstr "Benötigte Menge"
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr "Verfügbar"
@@ -7215,11 +7234,11 @@ msgstr "Der angegebene Server muss erreichbar sein"
msgid "Remote image must not exceed maximum allowable file size"
msgstr "Das Bild darf nicht größer als die maximal-erlaubte Größe sein"
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr "Keine Antwort"
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr "keine Antwort vom InvenTree Server"
@@ -7231,27 +7250,27 @@ msgstr "Fehler 400: Fehlerhafte Anfrage"
msgid "API request returned error code 400"
msgstr "Fehler-Code 400 zurückgegeben"
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr "Fehler 401: Nicht Angemeldet"
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr "Authentication Kredentials nicht angegeben"
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr "Fehler 403: keine Berechtigung"
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr "Fehlende Berechtigung für diese Aktion"
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr "Fehler 404: Ressource nicht gefunden"
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr "Die angefragte Ressource kann auf diesem Server nicht gefunden werden"
@@ -7263,11 +7282,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr "Fehler 408: Zeitüberschreitung"
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr "Verbindungszeitüberschreitung bei der Datenanforderung"
@@ -7336,7 +7355,7 @@ msgid "Unknown response from server"
msgstr "Unbekannte Antwort von Server erhalten"
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr "Ungültige Antwort von Server"
@@ -7496,7 +7515,7 @@ msgstr "Stücklisten Ersatzteile bearbeiten"
msgid "Substitutes Available"
msgstr "Ersatzteile verfügbar"
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr "Varianten erlaubt"
@@ -7540,7 +7559,7 @@ msgstr "Stücklisten-Position bearbeiten"
msgid "Delete BOM Item"
msgstr "Stücklisten-Position löschen"
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr "Keine Stücklisten-Position(en) gefunden"
@@ -7548,7 +7567,7 @@ msgstr "Keine Stücklisten-Position(en) gefunden"
msgid "Are you sure you want to delete this BOM item?"
msgstr "Sind Sie sicher, dass Sie diese Stücklisten-Position löschen wollen?"
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr "benötigtes Teil"
@@ -7556,165 +7575,177 @@ msgstr "benötigtes Teil"
msgid "Inherited from parent BOM"
msgstr "Geerbt von übergeordneter Stückliste"
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr "Bauauftrag bearbeiten"
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr "Bauauftrag erstellen"
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr "Bauauftrag ist unvollständig"
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr "Bauauftrag fertigstellen"
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr "Lagerartikel zu diesem Endprodukt zuweisen"
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr "Bestand von Endpordukt zurücknehmen"
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr "Endprodukt fertigstellen"
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr "Endprodukt entfernen"
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr "Sind Sie sicher, dass sie alle Lagerartikel von diesem Bauauftrag entfernen möchten?"
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr "Lagerartikel zurücknehmen"
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr "Endprodukte auswählen"
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr "Mindestens ein Endprodukt muss ausgewählt werden"
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr "Endprodukt"
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr "Endprodukte fertigstellen"
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr "Keine Allokationen für Bauauftrag gefunden"
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr "Standort nicht angegeben"
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr "Keine aktiven Endprodukte gefunden"
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr "Bestands-Zuordnung bearbeiten"
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr "Bestands-Zuordnung löschen"
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr "Zuordnung bearbeiten"
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr "Zuordnung entfernen"
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr "Ersatzteile verfügbar"
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr "Anzahl pro"
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr "Zugeordnet"
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr "Bestand bauen"
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr "Bestand bestellen"
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr "Bestand zuweisen"
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr "Anzahl für Bestandszuordnung eingeben"
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Teile auswählen"
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr "Sie müssen mindestens ein Teil auswählen"
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr "Wählen Sie den Quellort aus (leer lassen um von allen Standorten zu nehmen)"
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr "Bestandszuordnung bestätigen"
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr "Lagerartikel für Bauauftrag zuweisen"
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr "Keine passenden Lagerstandorte"
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr "Keine passenden Lagerbestände"
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr "Keine Bauaufträge passen zur Anfrage"
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr "Auswählen"
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr "Bauauftrag ist überfällig"
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr "Keine Benutzerinformation"
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr "Keine Information"
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr "Keine Teile zugeordnet zu"
@@ -7945,12 +7976,12 @@ msgid "Select Label Template"
msgstr "Label-Vorlage auswählen"
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr "Abbrechen"
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr "Abschicken"
@@ -7967,39 +7998,39 @@ msgstr "Warte auf Server..."
msgid "Show Error Information"
msgstr "Fehler-Informationen anzeigen"
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr "Akzeptieren"
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr "Lade Daten"
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr "ungültige Antwort vom Server"
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr "Formulardaten fehlen bei Serverantwort"
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr "Formulardaten fehlerhaft"
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr "JSON Antwort enthält keine Formulardaten"
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr "Fehler 400: Ungültige Anfrage"
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr "Fehler 400 von Server erhalten"
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr "Fehler bei Formulardaten-Anfrage"
@@ -8696,7 +8727,7 @@ msgstr "Entfernen"
msgid "Add Stock"
msgstr "Bestand hinzufügen"
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr "Hinzufügen"
@@ -9108,48 +9139,52 @@ msgstr "Lade Daten"
msgid "rows per page"
msgstr "Zeilen pro Seite"
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr "zeige"
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr "bis"
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr "von"
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr "Zeilen"
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr "Suche"
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr "Keine passenden Ergebnisse gefunden"
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr "Zeige/Verstecke Pagination"
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr "Neu laden"
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr "umschalten"
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr "Spalten"
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr "Alle"
@@ -9333,35 +9368,35 @@ msgstr "Berechtigungen"
msgid "Important dates"
msgstr "wichtige Daten"
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr "Berechtigung geändert"
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr "Gruppe"
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr "Ansicht"
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr "Berechtigung Einträge anzuzeigen"
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr "Berechtigung Einträge zu erstellen"
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr "Ändern"
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr "Berechtigungen Einträge zu ändern"
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr "Berechtigung Einträge zu löschen"
diff --git a/InvenTree/locale/el/LC_MESSAGES/django.po b/InvenTree/locale/el/LC_MESSAGES/django.po
index 4cbc3642ce..f036c87833 100644
--- a/InvenTree/locale/el/LC_MESSAGES/django.po
+++ b/InvenTree/locale/el/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Greek\n"
"Language: el_GR\n"
@@ -34,8 +34,8 @@ msgstr ""
msgid "Enter date"
msgstr ""
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr ""
@@ -157,8 +157,8 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr ""
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr ""
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr ""
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr ""
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr ""
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr ""
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po
index 586f846e4b..c11b450104 100644
--- a/InvenTree/locale/es/LC_MESSAGES/django.po
+++ b/InvenTree/locale/es/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:28\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:58\n"
"Last-Translator: \n"
"Language-Team: Spanish, Mexico\n"
"Language: es_MX\n"
@@ -34,8 +34,8 @@ msgstr "No se encontró ninguna acción coincidente"
msgid "Enter date"
msgstr "Ingrese fecha"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Confirmar"
@@ -157,8 +157,8 @@ msgstr "Comentario"
msgid "File comment"
msgstr "Comentario de archivo"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Elección no válida"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Nombre"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Debe ser un número válido"
msgid "Filename"
msgstr "Nombre de archivo"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Alemán"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Griego"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Inglés"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Español"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr "Español (México)"
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Francés"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Hebreo"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Italiano"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Japonés"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Coreano"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Holandés"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Noruego"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Polaco"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr "Portugués"
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Ruso"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Sueco"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Tailandés"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Turco"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Vietnamita"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Chino"
@@ -585,7 +585,7 @@ msgstr "Código de barras asignado al Elemento del Stock"
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr "Código de barras asignado al Elemento del Stock"
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr "Marcar construcción como completa"
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "¿Deseas cancelar?"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr "Opción no válida para el armado principal"
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "Orden de Producción"
@@ -683,7 +679,7 @@ msgstr "Referencia de Orden de Producción"
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "Referencia"
@@ -718,9 +714,9 @@ msgstr "Orden de Producción a la cual esta producción pertenece"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "Referencia de Orden de Venta"
msgid "SalesOrder to which this build is allocated"
msgstr "Ordenes de Venta a la cual esta producción pertenece"
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "Ubicación de origen"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "Fecha de finalización"
@@ -815,7 +811,7 @@ msgstr "Fecha de finalización"
msgid "completed by"
msgstr "terminado por"
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr "Emitido por"
@@ -828,7 +824,7 @@ msgstr "El usuario que emitió esta orden"
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr "Responsable"
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "Link externo"
@@ -904,8 +900,8 @@ msgstr "La cantidad debe ser 1 para el stock serializado"
msgid "Selected stock item not found in BOM"
msgstr "Artículo de stock seleccionado no encontrado en BOM"
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr "Instalar en"
msgid "Destination stock item"
msgstr "Artículo de stock de destino"
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "Estado"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr "Debe proporcionar adjudicación de artículos"
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr "Vencido"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Completado"
@@ -1146,7 +1169,7 @@ msgstr "Completado"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "Orden de Venta"
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr "Destinación"
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr "Partes asignadas"
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr "Lote"
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr "Desasignar stock"
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr "Número de días en que artículos de stock se consideran obsoletos antes de caducar"
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr "Habilitar control de propiedad sobre ubicaciones de stock y artículos"
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr "Agrupar artículos de stock por referencia de parte en vistas de tabla"
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr "Mostrar artículos de stock recientemente modificados en la página de inicio"
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr "Número de elementos de stock recientes a mostrar en la página de índice"
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr "Mostrar artículos de stock bajo en la página de inicio"
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr "Mostrar artículos agotados en la página de inicio"
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr "Mostrar elementos de stock necesarios para construir en la página de inicio"
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr "Mostrar artículos de stock caducados en la página de inicio"
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr "Mostrar elementos de stock obsoletos en la página de inicio"
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr "Artículos de Stock Asignados"
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr "Número de artículos recibidos"
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr "Parte principal"
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr "Último Inventario"
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr "Ningún inventario realizado"
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr "Artículo principal"
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr "Heredado de BOM principal"
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr "Permiso para ver artículos"
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr "Permiso para añadir artículos"
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr "Permisos para editar artículos"
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr "Permiso para eliminar artículos"
diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po
index 77f5ed0cab..f4ab7586e2 100644
--- a/InvenTree/locale/fr/LC_MESSAGES/django.po
+++ b/InvenTree/locale/fr/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
@@ -34,8 +34,8 @@ msgstr "Aucune action correspondante trouvée"
msgid "Enter date"
msgstr "Entrer la date"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Confirmer"
@@ -157,8 +157,8 @@ msgstr "Commentaire"
msgid "File comment"
msgstr "Commentaire du fichier"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Choix invalide"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Nom"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Doit être un nombre valide"
msgid "Filename"
msgstr "Nom du fichier"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Allemand"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Greek"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Anglais"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Spanish"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr "Espagnol (Mexique)"
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Français"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Hebrew"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Italian"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Japanese"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Korean"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Dutch"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Norwegian"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Polonais"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr "Portugais"
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Russian"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Swedish"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Thai"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Turc"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Vietnamese"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Chinese"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr "Confirmer la création de la sortie de l'assemblage"
msgid "Confirm deletion of build output"
msgstr "Confirmer la supression de la fabrication"
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr "Indiquer la fabrication comme terminé"
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "Confirmer l'annulation"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr "Confirmer l'annulation de la fabrication"
@@ -660,7 +656,7 @@ msgstr "Choix invalide pour la fabrication parente"
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "Ordre de Fabrication"
@@ -683,7 +679,7 @@ msgstr "Référence de l' Ordre de Fabrication"
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "Référence"
@@ -718,9 +714,9 @@ msgstr "BuildOrder associé a cette fabrication"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "Bon de commande de référence"
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "Emplacement d'origine"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "Lien Externe"
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr "Assemblage"
@@ -914,13 +910,13 @@ msgstr "Assemblage"
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr "Installer dans"
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr "Sortie d'assemblage"
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "État"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr "L'article doit être en stock"
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr "La quantité doit être supérieure à zéro"
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantité disponible ({q}) dépassée"
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr "Supprimer l'assemblage"
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr "Compléter l'assemblage"
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr "Date Cible"
@@ -1135,7 +1158,7 @@ msgstr "En retard"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Terminé"
@@ -1146,7 +1169,7 @@ msgstr "Terminé"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "Commandes"
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr "Destination"
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr "Créé le"
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr "{name.title()} Fichier"
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr "Pas de groupe"
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr "Redémarrage nécessaire"
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr "Nom de la société"
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr "Devise par défaut"
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr "Devises par défaut"
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr "Télécharger depuis l'URL"
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr "Regex IPN"
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr "Expression régulière pour la correspondance avec l'IPN de la Pièce"
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr "Autoriser les IPN dupliqués"
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr "Permettre à plusieurs pièces de partager le même IPN"
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr "Autoriser l'édition de l'IPN"
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr "Permettre de modifier la valeur de l'IPN lors de l'édition d'une pièce"
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr "Composant"
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr "Achetable"
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr "Les pièces sont achetables par défaut"
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr "Afficher l'assistant d'importation pour certaine vues de produits"
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr "Taille de la page"
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr "Rapports de test"
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr "jours"
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr "Préfixe des commandes d'achats"
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr "Activer les mots de passe oubliés"
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr "Activer les inscriptions"
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr "Activer le SSO"
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr "Activer le SSO sur les pages de connexion"
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr "Email requis"
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr "Saisie automatique des utilisateurs SSO"
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr "Courriel en double"
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr "Afficher les dernières pièces"
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr "Afficher les dernières modifications du stock"
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr "Télécharger l'image depuis l'URL"
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr "Nouvelle commande de vente"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr "Stock affecté"
@@ -2763,7 +2750,7 @@ msgstr "Supprimer les pièces du fournisseur"
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr "Supprimer"
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr "Commande"
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr "Nombre d'éléments reçus"
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr "Prix d'achat"
@@ -3549,7 +3536,7 @@ msgstr "Dupliquer la sélection"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr "Catégorie"
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr "Données"
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr "Propriétaire"
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr "Ajouter une pièce jointe"
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr "Disponible"
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr "Annuler"
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/he/LC_MESSAGES/django.po b/InvenTree/locale/he/LC_MESSAGES/django.po
index 7386d27feb..ce530b28cd 100644
--- a/InvenTree/locale/he/LC_MESSAGES/django.po
+++ b/InvenTree/locale/he/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Hebrew\n"
"Language: he_IL\n"
@@ -34,8 +34,8 @@ msgstr ""
msgid "Enter date"
msgstr ""
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr ""
@@ -157,8 +157,8 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr ""
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr ""
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr ""
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr ""
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr ""
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr ""
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/id/LC_MESSAGES/django.po b/InvenTree/locale/id/LC_MESSAGES/django.po
index 7dd1b774e0..3bea5cd46f 100644
--- a/InvenTree/locale/id/LC_MESSAGES/django.po
+++ b/InvenTree/locale/id/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Indonesian\n"
"Language: id_ID\n"
@@ -34,8 +34,8 @@ msgstr "Aksi tidak ditemukan"
msgid "Enter date"
msgstr "Masukkan tanggal"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Konfirmasi"
@@ -157,8 +157,8 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr ""
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr ""
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr ""
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr ""
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr ""
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr ""
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po
index bc9564c36d..06cccdc4f0 100644
--- a/InvenTree/locale/it/LC_MESSAGES/django.po
+++ b/InvenTree/locale/it/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:28\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:58\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -34,8 +34,8 @@ msgstr "Nessuna azione corrispondente trovata"
msgid "Enter date"
msgstr "Inserisci la data"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Conferma"
@@ -157,8 +157,8 @@ msgstr "Commento"
msgid "File comment"
msgstr "Commento del file"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Scelta non valida"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Nome"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Deve essere un numero valido"
msgid "Filename"
msgstr "Nome del file"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Tedesco"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Greco"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Inglese"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Spagnolo"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr "Spagnolo (Messicano)"
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Francese"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Ebraico"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Italiano"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Giapponese"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Coreano"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Olandese"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Norvegese"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Polacco"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr "Portoghese"
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Russo"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Svedese"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Thailandese"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Turco"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Vietnamita"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Cinese"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr "Conferma la creazione dell'output di compilazione"
msgid "Confirm deletion of build output"
msgstr "Conferma la creazione dell'output di compilazione"
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "Conferma annullamento"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "Riferimento"
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "Numero di riferimento ordine di vendita"
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "Posizione Di Origine"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "Data di completamento"
@@ -815,7 +811,7 @@ msgstr "Data di completamento"
msgid "completed by"
msgstr "Completato da"
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr "Rilasciato da"
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr "Responsabile"
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "Collegamento esterno"
@@ -904,8 +900,8 @@ msgstr "La quantità deve essere 1 per lo stock serializzato"
msgid "Selected stock item not found in BOM"
msgstr "Articolo in giacenza selezionato non trovato nel BOM"
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr "Installa in"
msgid "Destination stock item"
msgstr "Destinazione articolo in giacenza"
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr "Posizione per gli output di build completati"
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "Stato"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr "Distinta base (Bom)"
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr "L'articolo deve essere disponibile"
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr "La quantità deve essere maggiore di zero"
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantità disponibile ({q}) superata"
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr "Deve essere indicata l'allocazione dell'articolo"
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr "Data scadenza"
@@ -1135,7 +1158,7 @@ msgstr "In ritardo"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Completato"
@@ -1146,7 +1169,7 @@ msgstr "Completato"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "Ordini di Vendita"
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr "Destinazione"
msgid "Destination location not specified"
msgstr "Posizione di destinazione non specificata"
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr "Lotto"
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr "Creato"
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr "Elimina Ordine Build"
@@ -1499,728 +1490,724 @@ msgstr "{name.title()} File"
msgid "Select {name} file to upload"
msgstr "Seleziona il file {name} da caricare"
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr "Tasto impostazioni (deve essere univoco - maiuscole e minuscole"
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr "Valore impostazioni"
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr "Deve essere un valore intero"
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr "Il valore specificato non è un opzione valida"
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr "Il valore deve essere un valore booleano"
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr "Il valore deve essere un intero"
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr "La stringa chiave deve essere univoca"
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr "Nessun gruppo"
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr "Riavvio richiesto"
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr "È stata modificata un'impostazione che richiede un riavvio del server"
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr "Nome Istanza InvenTree"
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr "Descrittore stringa per l'istanza del server"
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr "Utilizza nome istanza"
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr "Usa il nome dell'istanza nella barra del titolo"
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr "Nome azienda"
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr "Nome interno dell'azienda"
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr "URL Base"
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr "URL di base per l'istanza del server"
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr "Valuta predefinita"
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr "Valuta predefinita"
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr "Scarica dall'URL"
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr "Consenti il download di immagini e file remoti da URL esterno"
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr "Supporto Codice A Barre"
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr "Abilita supporto scanner codici a barre"
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr "IPN Regex"
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr "Schema di espressione regolare per l'articolo corrispondente IPN"
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr "Consenti duplicati IPN"
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr "Permetti a più articoli di condividere lo stesso IPN"
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr "Permetti modifiche al part number interno (IPN)"
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr "Consenti di modificare il valore del part number durante la modifica di un articolo"
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr "Copia I Dati Della distinta base dell'articolo"
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr "Copia I Dati Parametro dell'articolo"
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr "Copia i dati dei parametri di default quando si duplica un articolo"
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr "Copia i dati di prova di default quando si duplica un articolo"
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr "Copia Template Parametri Categoria"
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr "Copia i modelli dei parametri categoria quando si crea un articolo"
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr "Template"
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr "Gli articoli sono modelli per impostazione predefinita"
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr "Assemblaggio"
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr "Gli articoli possono essere assemblate da altri componenti per impostazione predefinita"
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr "Componente"
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr "Gli articoli possono essere assemblati da altri componenti per impostazione predefinita"
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr "Acquistabile"
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr "Gli articoli sono acquistabili per impostazione predefinita"
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr "Vendibile"
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr "Gli articoli sono acquistabili per impostazione predefinita"
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr "Tracciabile"
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr "Gli articoli sono tracciabili per impostazione predefinita"
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr "Virtuale"
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr "Gli articoli sono virtuali per impostazione predefinita"
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr "Mostra l'importazione nelle viste"
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr "Mostra la procedura guidata di importazione in alcune viste articoli"
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr "Mostra il prezzo nei moduli"
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr "Mostra il prezzo dell'articolo in alcuni moduli"
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr "Mostra il prezzo nella BOM"
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr "Includi le informazioni sui prezzi nelle tabelle BOM"
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr "Mostra articoli correlati"
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr "Visualizza parti correlate per ogni articolo"
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr "Crea giacenza iniziale"
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr "Crea giacenza iniziale sulla creazione articolo"
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr "Prezzi interni"
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr "Abilita prezzi interni per gli articoli"
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr "Prezzo interno come BOM-Price"
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr "Utilizzare il prezzo interno (se impostato) nel calcolo del prezzo BOM"
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr "Formato di visualizzazione del nome articolo"
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr "Formato per visualizzare il nome dell'articolo"
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr "Abilita Report di Stampa"
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr "Abilita generazione di report di stampa"
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr "Modalità Debug"
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr "Genera report in modalità debug (output HTML)"
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr "Dimensioni pagina"
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr "Dimensione predefinita della pagina per i report PDF"
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr "Stampa di prova"
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr "Abilita generazione di stampe di prova"
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr "Scadenza giacenza"
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr "Abilita funzionalità di scadenza della giacenza"
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr "Vendi giacenza scaduta"
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr "Consenti la vendita di stock scaduti"
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr "Numero di giorni in cui gli articoli in magazzino sono considerati obsoleti prima della scadenza"
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr "giorni"
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr "Controllo della proprietà della giacenza"
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr "Abilita il controllo della proprietà sulle posizioni e gli oggetti in giacenza"
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr "Raggruppa per articolo"
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr "Raggruppa le voci di giacenza per riferimento articolo nelle viste della tabella"
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr "Referenza ordine d'acquisto"
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr "Abilita password dimenticata"
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr "Abilita la funzione password dimenticata nelle pagine di accesso"
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr "Abilita registrazione"
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr "Abilita auto-registrazione per gli utenti nelle pagine di accesso"
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr "SSO abilitato"
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr "Abilita SSO nelle pagine di accesso"
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr "Email richiesta"
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr "Richiedi all'utente di fornire una email al momento dell'iscrizione"
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr "Riempimento automatico degli utenti SSO"
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Compila automaticamente i dettagli dell'utente dai dati dell'account SSO"
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr "Mostra le categorie sottoscritte"
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr "Mostra le categorie dei componenti sottoscritti nella homepage"
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr "Mostra ultimi articoli"
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr "Visualizzazione dell'etichetta in linea"
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file"
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr "Visualizzazione dell'etichetta in linea"
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file"
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr "Risultati Dell'Anteprima Di Ricerca"
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr "Prezzo"
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr "Articolo di base"
@@ -2377,7 +2364,7 @@ msgstr "Seleziona articolo"
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr "Descrizione articolo costruttore"
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr "Codice articolo produttore"
@@ -2433,7 +2420,7 @@ msgstr "Valore del parametro"
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr "Unità"
@@ -2450,7 +2437,7 @@ msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr "Onere minimo (ad esempio tassa di stoccaggio)"
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr "Confezionamento"
@@ -2570,7 +2557,7 @@ msgstr "Scarica immagine dall'URL"
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr "Elimina articolo fornitore"
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr "Elimina"
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr "Articolo Fornitore"
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr "Duplica selezionati"
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca"
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr "Categoria"
@@ -4045,7 +4032,7 @@ msgstr "Quest'articolo può essere acquistato da fornitori esterni?"
msgid "Can this part be sold to customers?"
msgstr "Questo pezzo può essere venduto ai clienti?"
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr "Azioni Barcode"
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr "Mostra QR Code"
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr "Stampa Etichetta"
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr "Azioni magazzino"
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr "Database sconosciuto"
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr "La quantità è richiesta"
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr "Data di Scadenza"
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr "Installato In"
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr "Scansiona nella posizione"
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr "Conta giacenza"
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr "Aggiungi giacenza"
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr "Rimuovi giacenza"
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr "Trasferisci giacenza"
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr "pagina precedente"
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr "pagina successiva"
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr "Ultimo aggiornamento"
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr "Ultimo Inventario"
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr "Nessun inventario eseguito"
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr "Nessuna posizione impostata"
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr "Nessun parametro di categoria trovato"
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr "Informazioni Versione InvenTree"
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Chiudi"
@@ -7130,15 +7149,15 @@ msgstr ""
msgid "Add Attachment"
msgstr "Aggiungi allegato"
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr "È necessario riavviare il server"
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr "È stata modificata un'impostazione che richiede un riavvio del server"
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr "Contatta l'amministratore per maggiori informazioni"
@@ -7166,8 +7185,8 @@ msgstr "Quantità richiesta"
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr "Disponibile"
@@ -7214,11 +7233,11 @@ msgstr "Il server remoto deve essere accessibile"
msgid "Remote image must not exceed maximum allowable file size"
msgstr "L'immagine remota non deve superare la dimensione massima consentita del file"
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7230,27 +7249,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7262,11 +7281,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7335,7 +7354,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7495,7 +7514,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7539,7 +7558,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7547,7 +7566,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7555,165 +7574,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr "Posizione non specificata"
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr "Modifica allocazione magazzino"
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr "Elimina posizione giacenza"
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr "Modifica Posizione"
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr "Rimuovi Posizione"
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr "Specificare il quantitativo assegnato allo stock"
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Seleziona Articoli"
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr "Seleziona la posizione di origine (lascia vuoto per prendere da tutte le posizioni)"
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr "Conferma l'assegnazione della giacenza"
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr "Nessuna posizione di magazzino corrispondente"
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7944,12 +7975,12 @@ msgid "Select Label Template"
msgstr "Seleziona Modello Etichetta"
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr "Annulla"
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr "Invia"
@@ -7966,39 +7997,39 @@ msgstr "In attesa del server..."
msgid "Show Error Information"
msgstr "Informazioni sull'errore"
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr "Accetta"
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr "Risposta dal server non valida"
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8695,7 +8726,7 @@ msgstr "Prendi"
msgid "Add Stock"
msgstr "Aggiungi giacenza"
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr "Aggiungi"
@@ -9107,48 +9138,52 @@ msgstr "Caricamento dati"
msgid "rows per page"
msgstr "righe per pagina"
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr "Visualizzo"
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr "a"
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr "di"
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr "righe"
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr "Cerca"
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr "Nessun risultato corrispondente"
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr "Mostra/nascondi la paginazione"
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr "Aggiorna"
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr "Attiva/disattiva"
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr "Colonne"
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr "Tutti"
@@ -9332,35 +9367,35 @@ msgstr "Permessi"
msgid "Important dates"
msgstr "Date Importanti"
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr "Impostazione autorizzazioni"
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr "Gruppo"
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr "Visualizza"
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr "Autorizzazione a visualizzare gli articoli"
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr "Autorizzazione ad aggiungere elementi"
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr "Modificare"
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr "Permessi per modificare gli elementi"
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr "Autorizzazione ad eliminare gli elementi"
diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po
index 6134a9efff..7dff99a148 100644
--- a/InvenTree/locale/ja/LC_MESSAGES/django.po
+++ b/InvenTree/locale/ja/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:58\n"
"Last-Translator: \n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
@@ -34,8 +34,8 @@ msgstr "一致するアクションが見つかりませんでした"
msgid "Enter date"
msgstr "日付を入力する"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "確認"
@@ -157,8 +157,8 @@ msgstr "コメント:"
msgid "File comment"
msgstr "ファイルコメント"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "無効な選択です"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "お名前"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "有効な数字でなければなりません"
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "ドイツ語"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "英語"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "フランス語"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "ポーランド語"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "トルコ語"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr "パーツを割り当てるためにビルドする"
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr "テンプレート"
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr "パーツはデフォルトのテンプレートです"
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr "アセンブリ"
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます"
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr "コンポーネント"
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr "パーツはデフォルトでサブコンポーネントとして使用できます"
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr "購入可能"
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr "パーツはデフォルトで購入可能です"
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr "パーツはデフォルトで販売可能です"
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr "追跡可能"
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr "パーツはデフォルトで追跡可能です"
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr "メーカー・パーツ"
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/ko/LC_MESSAGES/django.po b/InvenTree/locale/ko/LC_MESSAGES/django.po
index 19ec20c6a9..92723e867d 100644
--- a/InvenTree/locale/ko/LC_MESSAGES/django.po
+++ b/InvenTree/locale/ko/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Korean\n"
"Language: ko_KR\n"
@@ -34,8 +34,8 @@ msgstr ""
msgid "Enter date"
msgstr ""
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr ""
@@ -157,8 +157,8 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr ""
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr ""
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr ""
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr ""
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr ""
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr ""
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/nl/LC_MESSAGES/django.po b/InvenTree/locale/nl/LC_MESSAGES/django.po
index ee5aec7e36..65bba6b9d6 100644
--- a/InvenTree/locale/nl/LC_MESSAGES/django.po
+++ b/InvenTree/locale/nl/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2022-01-03 09:49\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Dutch\n"
"Language: nl_NL\n"
@@ -34,8 +34,8 @@ msgstr "Geen overeenkomende actie gevonden"
msgid "Enter date"
msgstr "Voer datum in"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Bevestigen"
@@ -157,8 +157,8 @@ msgstr "Opmerking"
msgid "File comment"
msgstr "Bijlage opmerking"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Ongeldige keuze"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Naam"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Moet een geldig nummer zijn"
msgid "Filename"
msgstr "Bestandsnaam"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Duits"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Grieks"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Engels"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Spaans"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr "Spaans (Mexicaans)"
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Frans"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Hebreeuws"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Italiaans"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Japans"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Koreaans"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Nederlands"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Noors"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Pools"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr "Portugees"
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Russisch"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Zweeds"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Thais"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Turks"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Vietnamees"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Chinees"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr "Bevestig het maken van build-output"
msgid "Confirm deletion of build output"
msgstr "Bevestig verwijdering van build-output"
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr "Markeer build als voltooid"
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "Annuleren bevestigen"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr "Bevestig annulering van de build"
@@ -660,7 +656,7 @@ msgstr "Ongeldige keuze voor bovenliggende build"
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "Productie-opdracht"
@@ -683,7 +679,7 @@ msgstr "Productie-opdracht referentie"
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "Referentie"
@@ -718,9 +714,9 @@ msgstr "Productie-opdracht waar dit product aan is toegewezen"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "Verkooporder referentie"
msgid "SalesOrder to which this build is allocated"
msgstr "Verkooporder waar dit product aan is toegewezen"
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "Bron Locatie"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "Opleveringsdatum"
@@ -815,7 +811,7 @@ msgstr "Opleveringsdatum"
msgid "completed by"
msgstr "voltooid door"
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr "Gebruiker die de productie-opdracht heeft gegeven"
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr "Verantwoordelijke"
@@ -840,7 +836,7 @@ msgstr "Gebruiker verantwoordelijk voor deze productie-opdracht"
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "Externe Link"
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr "Product"
@@ -914,13 +910,13 @@ msgstr "Product"
msgid "Build to allocate parts"
msgstr "Bouw om onderdelen toe te wijzen"
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr "Installeren in"
msgid "Destination stock item"
msgstr "Bestemming voorraadartikel"
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "Status"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr "Verwijder bouw"
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr "Voltooi Build"
@@ -1112,7 +1135,7 @@ msgstr "Voorraad is niet volledig toegewezen aan deze productie-opdracht"
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr "Streefdatum"
@@ -1135,7 +1158,7 @@ msgstr "Achterstallig"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Voltooid"
@@ -1146,7 +1169,7 @@ msgstr "Voltooid"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "Verkooporder"
@@ -1189,26 +1212,6 @@ msgstr "Voer serienummers in om meerdere bouw-outputs te genereren"
msgid "Are you sure you wish to cancel this build?"
msgstr "Weet je zeker dat je de bouw wilt annuleren?"
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr "Productie-opdracht is voltooid"
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr "Productie-opdracht is onvolledig"
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr "Onvoltooide bouw outputs blijven"
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr "Build details"
@@ -1230,12 +1233,12 @@ msgstr "Bestemming"
msgid "Destination location not specified"
msgstr "Bestemmingslocatie niet opgegeven"
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr "Toegewezen onderdelen"
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr "Batch"
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr "Gecreëerd"
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr "Voorraad toewijzen aan Product"
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr "Niet toegewezen voorraad"
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr "Kies {name} bestand om te uploaden"
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr "Instellingssleutel (moet uniek zijn - hoofdletter ongevoelig"
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr "Waarde van de instelling"
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr "Moet een geheel getal zijn"
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr "Gekozen waarde is geen geldige optie"
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr "Waarde moet een booleaanse waarde zijn"
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr "Waarde moet een geheel getal zijn"
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr "Sleutelreeks moet uniek zijn"
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr "Inventree Instantie Naam"
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr "String-beschrijving voor de server instantie"
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr "Gebruik de instantie naam"
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr "Gebruik de naam van de instantie in de titelbalk"
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr "Bedrijfsnaam"
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr "Interne bedrijfsnaam"
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr "Basis URL"
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr "Basis URL voor serverinstantie"
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr "Standaard valuta"
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr "Standaard valuta"
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr "Download van URL"
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr "Download van afbeeldingen en bestanden vanaf een externe URL toestaan"
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr "Barcode ondersteuning"
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr "Barcodescanner ondersteuning inschakelen"
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr "IPN Regex"
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr "Reguliere expressiepatroon voor het corresponderen van deel IPN"
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr "Dubbele IPN toestaan"
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr "Toestaan dat meerdere onderdelen dezelfde IPN gebruiken"
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr "Bewerken IPN toestaan"
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr "Sta het wijzigen van de IPN toe tijdens het bewerken van een onderdeel"
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr "Samenstelling"
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr "Onderdelen kunnen standaard vanuit andere delen worden samengesteld"
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr "Interne prijzen"
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr "Foutopsporingsmodus"
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr "Paginagrootte"
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr "Testrapport"
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr "Verlopen voorraad"
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr "Verlopen voorraad functionaliteit inschakelen"
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr "Verkoop verlopen voorraad"
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr "Verkoop verlopen voorraad toestaan"
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr "dagen"
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr "Omschrijving onderdeel fabrikant"
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr "Fabrikant onderdeel"
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderd
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr "QR-code weergeven"
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr "Label afdrukken"
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr "Voorraad acties"
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr "Scan naar locatie"
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr "Voorraad tellen"
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr "Voorraad overzetten"
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr "Geen Locatie ingesteld"
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr "Geen fabrikant geselecteerd"
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr "Beschikbaar"
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr "Productie-opdracht is onvolledig"
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr "Locatie is niet opgegeven"
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr "Voorraadtoewijzing bewerken"
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr "Voorraadtoewijzing verwijderen"
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr "Toegewezen"
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr "Voorraad toewijzen"
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Onderdelen selecteren"
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr "Er moet op zijn minst één onderdeel toegewezen worden"
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr "Selecteer bron locatie (laat het veld leeg om iedere locatie te gebruiken)"
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr "Bevestig de voorraadtoewijzing"
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/no/LC_MESSAGES/django.po b/InvenTree/locale/no/LC_MESSAGES/django.po
index b625da1576..340a4b4fc7 100644
--- a/InvenTree/locale/no/LC_MESSAGES/django.po
+++ b/InvenTree/locale/no/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Norwegian\n"
"Language: no_NO\n"
@@ -34,8 +34,8 @@ msgstr "Ingen samsvarende handling funnet"
msgid "Enter date"
msgstr "Oppgi dato"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Bekreft"
@@ -157,8 +157,8 @@ msgstr "Kommenter"
msgid "File comment"
msgstr "Kommentar til fil"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Ugyldig valg"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Navn"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Nummer må være gyldig"
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Tysk"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Gresk"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Engelsk"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Spansk"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Fransk"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Hebraisk"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Italiensk"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Japansk"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Koreansk"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Nederlandsk"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Norsk"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Polsk"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Russisk"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Svensk"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Thailandsk"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Tyrkisk"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Vietnamesisk"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Kinesisk"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po
index 7d650776d2..794e1de29d 100644
--- a/InvenTree/locale/pl/LC_MESSAGES/django.po
+++ b/InvenTree/locale/pl/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 16:26\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:58\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
@@ -34,8 +34,8 @@ msgstr "Nie znaleziono pasującej akcji"
msgid "Enter date"
msgstr "Wprowadź dane"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Potwierdź"
@@ -157,8 +157,8 @@ msgstr "Komentarz"
msgid "File comment"
msgstr "Komentarz pliku"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Błędny wybór"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Nazwa"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Numer musi być prawidłowy"
msgid "Filename"
msgstr "Nazwa pliku"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Niemiecki"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Grecki"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Angielski"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Hiszpański"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr "Hiszpański (Meksyk)"
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Francuski"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Hebrajski"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Włoski"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Japoński"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Koreański"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Holenderski"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Norweski"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Polski"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr "Portugalski"
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Rosyjski"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Szwedzki"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Tajski"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Turecki"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Wietnamski"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Chiński"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr "Oznacz budowę jako ukończoną"
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "Na pewno anulować?"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "Zlecenie Budowy"
@@ -683,7 +679,7 @@ msgstr "Odwołanie do zamówienia wykonania"
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "Referencja"
@@ -718,9 +714,9 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "Odwołanie do zamówienia sprzedaży"
msgid "SalesOrder to which this build is allocated"
msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana"
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "Lokalizacja źródła"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "Data zakończenia"
@@ -815,7 +811,7 @@ msgstr "Data zakończenia"
msgid "completed by"
msgstr "zrealizowane przez"
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr "Wydany przez"
@@ -828,7 +824,7 @@ msgstr "Użytkownik, który wydał to zamówienie"
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr "Odpowiedzialny"
@@ -840,7 +836,7 @@ msgstr "Użytkownik odpowiedzialny za to zamówienie budowy"
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "Link Zewnętrzny"
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr "Budowa"
@@ -914,13 +910,13 @@ msgstr "Budowa"
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr "Zainstaluj do"
msgid "Destination stock item"
msgstr "Docelowa lokalizacja magazynowa przedmiotu"
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "Status"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr "Towar musi znajdować się w magazynie"
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr "Ilość musi być większa niż zero"
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr "Data docelowa"
@@ -1135,7 +1158,7 @@ msgstr "Zaległe"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Zakończone"
@@ -1146,7 +1169,7 @@ msgstr "Zakończone"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "Zamówienie zakupu"
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr "Czy na pewno przerwać tę budowę?"
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr "Szczegóły budowy"
@@ -1230,12 +1233,12 @@ msgstr "Przeznaczenie"
msgid "Destination location not specified"
msgstr "Nie określono lokalizacji docelowej"
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr "Partia"
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr "Utworzony"
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr "Przydziel zapasy do budowy"
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr "Cofnij przydział zapasów"
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr "Ustawienia wartości"
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr "Nazwa instancji InvenTree"
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr "Nazwa firmy"
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr "Bazowy URL"
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr "Bazowy adres URL dla instancji serwera"
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr "Pobierz z adresu URL"
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr "Zezwól na pobieranie zewnętrznych obrazów i plików z zewnętrznego URL"
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr "Obsługa kodu kreskowego"
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr "Włącz obsługę skanera kodów"
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr "Wyrażenie regularne IPN"
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr "Zezwól na powtarzający się IPN"
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr "Zezwól na edycję IPN"
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr "Skopiuj BOM komponentu"
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr "Szablon"
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr "Złożenie"
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr "Komponent"
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr "Możliwość zakupu"
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr "Części są domyślnie z możliwością zakupu"
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr "Możliwość sprzedaży"
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr "Części są domyślnie z możliwością sprzedaży"
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr "Możliwość śledzenia"
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr "Części są domyślnie z możliwością śledzenia"
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr "Wirtualny"
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr "Części są domyślnie wirtualne"
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr "Tryb Debugowania"
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr "Rozmiar strony"
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr "Raporty testów"
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr "Włącz generowanie raportów testów"
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr "dni"
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr "Grupuj według komponentu"
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr "Pokaż ilość w formularzach"
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr "Cena"
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr "Część bazowa"
@@ -2377,7 +2364,7 @@ msgstr "Wybierz część"
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr "Część producenta"
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr "Jednostki"
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr "Opakowanie"
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr "Usuń"
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr "Zamówienie"
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr "Cena zakupu"
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr "Akcje"
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr "Kategoria"
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr "Część nadrzędna"
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr "Dane"
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr "Wartość domyślna"
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr "Akcje kodów kreskowych"
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr "Pokaż Kod QR"
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr "Drukuj etykietę"
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr "Akcje magazynowe"
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr "Ostatni numer seryjny"
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr "Data ważności"
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr "Termin minął"
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr "Ostatnia aktualizacja"
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr "Ostatnia inwentaryzacja"
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr "Lokacje nie są ustawione"
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr "Skaner kodów"
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr "Dodaj załącznik"
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr "Dostępne"
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr "Błąd 403: Odmowa dostępu"
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr "Nie masz uprawnień wymaganych do dostępu do tej funkcji"
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr "Ilość za"
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr "Przydzielono"
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr "Potwierdź przydział zapasów"
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr "Dodaj stan"
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr "Dodaj"
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr "Uprawnienia"
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr "Uprawnienia nadane"
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr "Uprawnienie do wyświetlania przedmiotów"
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr "Uprawnienie do dodawania przedmiotów"
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr "Uprawnienie do edycji przedmiotów"
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr "Uprawnienie do usuwania przedmiotów"
diff --git a/InvenTree/locale/pt/LC_MESSAGES/django.po b/InvenTree/locale/pt/LC_MESSAGES/django.po
index 34654d95ee..c7cba4671b 100644
--- a/InvenTree/locale/pt/LC_MESSAGES/django.po
+++ b/InvenTree/locale/pt/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Portuguese\n"
"Language: pt_PT\n"
@@ -34,8 +34,8 @@ msgstr ""
msgid "Enter date"
msgstr ""
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr ""
@@ -157,8 +157,8 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr ""
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr ""
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr ""
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr ""
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr ""
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr ""
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po
index 63739f4e60..4a369c47ae 100644
--- a/InvenTree/locale/ru/LC_MESSAGES/django.po
+++ b/InvenTree/locale/ru/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:58\n"
"Last-Translator: \n"
"Language-Team: Russian\n"
"Language: ru_RU\n"
@@ -34,8 +34,8 @@ msgstr "Соответствующее действие не найдено"
msgid "Enter date"
msgstr "Введите дату"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Подтвердить"
@@ -157,8 +157,8 @@ msgstr "Комментарий"
msgid "File comment"
msgstr "Комментарий к файлу"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Неверный выбор"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Название"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Должно быть действительным номером"
msgid "Filename"
msgstr "Имя файла"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Немецкий"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Греческий"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Английский"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Испанский"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr "Испанский (Мексика)"
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Французский"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Иврит"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Итальянский"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Японский"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Корейский"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Голландский"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Норвежский"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Польский"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr "Португальский"
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Русский"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Шведский"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Тайский"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Турецкий"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Вьетнамский"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Китайский"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr "Подтвердите создание выходной информа
msgid "Confirm deletion of build output"
msgstr "Подтвердите удаление результатов сборки"
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr "Пометить сборку как завершенную"
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "Подтвердите отмену"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr "Подтвердите отмену сборки"
@@ -660,7 +656,7 @@ msgstr "Неверный выбор для родительской сборки
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "Порядок сборки"
@@ -683,7 +679,7 @@ msgstr "Ссылка на заказ"
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "Отсылка"
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "Отсылка на заказ"
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "Расположение источника"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Целевая дата для сборки. Сборка будет просрочена после этой даты."
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "Дата завершения"
@@ -815,7 +811,7 @@ msgstr "Дата завершения"
msgid "completed by"
msgstr "выполнено"
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr "Выдал/ла"
@@ -828,7 +824,7 @@ msgstr "Пользователь, выпустивший этот заказ н
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr "Ответственный"
@@ -840,7 +836,7 @@ msgstr "Пользователь ответственный за этот зак
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "Внешняя ссылка"
@@ -904,8 +900,8 @@ msgstr "Количество должно быть 1 для сериализов
msgid "Selected stock item not found in BOM"
msgstr "Выбранный предмет со складом не найден в BOM"
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr "Сборка"
@@ -914,13 +910,13 @@ msgstr "Сборка"
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "Статус"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr "BOM Компонент"
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr "Компонент должен быть в наличии"
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr "Количество должно быть больше нуля"
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Превышено доступное количество ({q})"
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr "Удалить сборку"
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr "Завершить сборку"
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr "Целевая дата"
@@ -1135,7 +1158,7 @@ msgstr "Просрочено"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Завершённые"
@@ -1146,7 +1169,7 @@ msgstr "Завершённые"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "Заказ покупателя"
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr "Партия"
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr "Создано"
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr "Подтвердите выделение запасов"
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/sv/LC_MESSAGES/django.po b/InvenTree/locale/sv/LC_MESSAGES/django.po
index f4015e78ec..01ce4d0e48 100644
--- a/InvenTree/locale/sv/LC_MESSAGES/django.po
+++ b/InvenTree/locale/sv/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Swedish\n"
"Language: sv_SE\n"
@@ -34,8 +34,8 @@ msgstr "Ingen matchande åtgärd hittades"
msgid "Enter date"
msgstr "Ange datum"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Bekräfta"
@@ -157,8 +157,8 @@ msgstr "Kommentar"
msgid "File comment"
msgstr "Fil kommentar"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Ogiltigt val"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Namn"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Måste vara ett giltigt nummer"
msgid "Filename"
msgstr "Filnamn"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Tyska"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Grekiska"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "Engelska"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "Spanska"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Franska"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "Hebreiska"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "Italienska"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Japanska"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Koreanska"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Nederländska"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Norska"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Polska"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Ryska"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "Svenska"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Thailändska"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Turkiska"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "Vietnamesiska"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Kinesiska"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/th/LC_MESSAGES/django.po b/InvenTree/locale/th/LC_MESSAGES/django.po
index c7ff4190b2..82cffcc5ec 100644
--- a/InvenTree/locale/th/LC_MESSAGES/django.po
+++ b/InvenTree/locale/th/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Thai\n"
"Language: th_TH\n"
@@ -34,8 +34,8 @@ msgstr ""
msgid "Enter date"
msgstr ""
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr ""
@@ -157,8 +157,8 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr ""
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr ""
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr ""
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr ""
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr ""
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr ""
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr ""
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr ""
@@ -815,7 +811,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr ""
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr ""
@@ -1146,7 +1169,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po
index 3ae94e8bc1..ba5c2b4fa3 100644
--- a/InvenTree/locale/tr/LC_MESSAGES/django.po
+++ b/InvenTree/locale/tr/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:58\n"
"Last-Translator: \n"
"Language-Team: Turkish\n"
"Language: tr_TR\n"
@@ -34,8 +34,8 @@ msgstr "Eşleşen eylem bulunamadı"
msgid "Enter date"
msgstr "Tarih giriniz"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "Onay"
@@ -157,8 +157,8 @@ msgstr "Yorum"
msgid "File comment"
msgstr "Dosya yorumu"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "Geçersiz seçim"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "Adı"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "Geçerli bir numara olmalı"
msgid "Filename"
msgstr ""
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "Almanca"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "Yunanca"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "İngilizce"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "İspanyolca"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "Fransızca"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "İbranice"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "İtalyanca"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "Japonca"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "Korece"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "Flemenkçe"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "Norveççe"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "Polonyaca"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "Rusça"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "İsveççe"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "Tay dili"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "Türkçe"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "Çince"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr "Yapım işi çıktısının oluşturulmasını onaylayın"
msgid "Confirm deletion of build output"
msgstr "Yapım işi çıktısının silinmesini onaylayın"
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr "Yapım işini tamamlandı olarak işaretle"
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "İptali Onayla"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr "Yapım işi iptalini onayla"
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "Yapım İşi Emri"
@@ -683,7 +679,7 @@ msgstr "Yapım İşi Emri Referansı"
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "Referans"
@@ -718,9 +714,9 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "Satış Emri Referansı"
msgid "SalesOrder to which this build is allocated"
msgstr "Bu yapım işinin tahsis edildiği satış emri"
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "Kaynak Konum"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Yapım işinin tamamlanması için hedef tarih. Bu tarihten sonra yapım işi gecikmiş olacak."
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "Tamamlama tarihi"
@@ -815,7 +811,7 @@ msgstr "Tamamlama tarihi"
msgid "completed by"
msgstr "tamamlayan"
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr "Veren"
@@ -828,7 +824,7 @@ msgstr "Bu yapım işi emrini veren kullanıcı"
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr "Sorumlu"
@@ -840,7 +836,7 @@ msgstr "Bu yapım işi emrinden sorumlu kullanıcı"
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "Harici Bağlantı"
@@ -904,8 +900,8 @@ msgstr "Seri numaralı stok için miktar bir olmalı"
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr "Yapım İşi"
@@ -914,13 +910,13 @@ msgstr "Yapım İşi"
msgid "Build to allocate parts"
msgstr "Yapım işi için tahsis edilen parçalar"
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr "Kurulduğu yer"
msgid "Destination stock item"
msgstr "Hedef stok kalemi"
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "Durum"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr "Gerekli stok tamamen tahsis edilemedi"
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr "Gerekli yapım işi miktarı tamamlanmadı"
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr "Tamamlanmış Yapım İşi"
@@ -1112,7 +1135,7 @@ msgstr "Stok, yapım işi emri için tamamen tahsis edilemedi"
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr "Hedeflenen tarih"
@@ -1135,7 +1158,7 @@ msgstr "Vadesi geçmiş"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Tamamlandı"
@@ -1146,7 +1169,7 @@ msgstr "Tamamlandı"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "Sipariş Emri"
@@ -1189,26 +1212,6 @@ msgstr "Birden çok tek yapım işi çıktısı oluşturmak için seri numaralar
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr "Yapım işi emri tamamlandı"
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr "Yapım işi emri eksik"
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr "Eksik yapım işi çıktıları kaldı"
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr "Gerekli yapım işi miktarı tamamlanmadı"
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr "Gerekli stok tamamen tahsis edilemedi"
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr "Yapım İşi Detayları"
@@ -1230,12 +1233,12 @@ msgstr "Hedef"
msgid "Destination location not specified"
msgstr "Hedef konumu belirtilmedi"
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr "Toplu"
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr "Oluşturuldu"
@@ -1265,7 +1268,7 @@ msgstr "Alt Yapım İşi Emrileri"
msgid "Allocate Stock to Build"
msgstr "Yapım İşi için Stok Tahsis Et"
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr "Stok tahsisini kaldır"
@@ -1446,19 +1449,7 @@ msgstr "Yapım işi çıktısı belirtilmeli"
msgid "Build output deleted"
msgstr "Yapım işi çıktısı silindi"
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr "Tamamlanmış Yapım İşi Emri"
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr "Yapım işi emri tamamlanamadı - eksik çıktılar kaldı"
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr "Tamamlanmış yapım işi emri"
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr "Yapım İşi Emrini Sil"
@@ -1499,728 +1490,724 @@ msgstr "{name.title()} Dosya"
msgid "Select {name} file to upload"
msgstr "{name} dosyasını yüklemek için seçin"
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr "Bir tam sayı olmalı"
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr "Anahtar dizesi benzersiz olmalı"
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr "Şirket adı"
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr "Ana URL"
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr "Varsayılan Para Birimi"
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr "Varsayılan para birimi"
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr "URL'den indir"
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr "Harici URL'den resim ve dosyaların indirilmesine izin ver"
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr "Barkod Desteği"
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr "Barkod tarayıcı desteğini etkinleştir"
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr "DPN Regex"
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr "Parça DPN eşleştirmesi için Düzenli İfade Kalıbı (Regex)"
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr "Yinelenen DPN'ye İzin Ver"
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr "Birden çok parçanın aynı DPN'yi paylaşmasına izin ver"
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr "DPN Düzenlemeye İzin Ver"
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr "Parçayı düzenlerken DPN değiştirmeye izin ver"
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr "Kategori Paremetre Sablonu Kopyala"
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr "Parça oluştururken kategori parametre şablonlarını kopyala"
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr "Şablon"
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr "Parçaları varsayılan olan şablondur"
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr "Montaj"
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr "Parçalar varsayılan olarak başka bileşenlerden monte edilebilir"
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr "Bileşen"
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr "Parçalar varsayılan olarak alt bileşen olarak kullanılabilir"
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr "Satın Alınabilir"
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr "Parçalar varsayılan olarak satın alınabilir"
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr "Satılabilir"
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr "Parçalar varsayılan olarak satılabilir"
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr "Takip Edilebilir"
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr "Parçalar varsayılan olarak takip edilebilir"
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr "Sanal"
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr "Parçalar varsayılan olarak sanaldır"
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr "Formlarda Fiyat Göster"
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr "İlgili parçaları göster"
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr "Hata Ayıklama Modu"
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr "Raporları hata ayıklama modunda üret (HTML çıktısı)"
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr "Sayfa Boyutu"
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr "PDF raporlar için varsayılan sayfa boyutu"
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr "Test Raporları"
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr "günler"
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr "Stok konumu ve ögeler üzerinde sahiplik kontrolünü etkinleştirin"
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr "Formlarda Miktarı Göster"
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr "Fiyat"
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr "Bu şirket için varsayılan para birimi"
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr "Temel Parça"
@@ -2377,7 +2364,7 @@ msgstr "Parça seçin"
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr "Parametre değeri"
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr "Paketleme"
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr "Yeni Satış Emri"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr "Atanan Stok"
@@ -2763,7 +2750,7 @@ msgstr "Tedarikçi parçalarını sil"
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr "Tedarikçi Parçası"
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr ""
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr "İşlemler"
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr "Bu parça dış tedarikçilerden satın alınabilir mi?"
msgid "Can this part be sold to customers?"
msgstr "Bu parça müşterilere satılabilir mi?"
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr "Parametre Şablonu"
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr "Barkod işlemleri"
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr "Etiket Yazdır"
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr "Stok işlemleri"
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr "Son Seri Numarası"
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr "Yeni parça çeşidi oluştur"
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr "Kurulu stok kalemlerinin kaldırılmasını onayla"
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr "Konuma Tara"
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr "Yazdırma işlemleri"
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr "Stok ayarlama işlemleri"
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr "Stoku seri numarala"
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr "Çeşide çevir"
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr "Bu stok kaleminin süresi %(item.expiry_date)s tarihinde sona erdi"
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr "Bu stok kaleminin süresi %(item.expiry_date)s tarihinde sona erecek"
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr "Stok kalemi tüm gerekli testleri geçmedi"
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr "Bu stok kalemi seri numaları - Benzersiz bir seri numarasına sahip ve miktarı ayarlanamaz."
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr "Konum ayarlanmadı"
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr "Kategori parametre şablonu bulunamadı"
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr "Şablonu Düzenle"
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr "Şablonu Sil"
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr "Parça parametre şablonu bulunamadı"
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr "InvenTree Sürüm Bilgisi"
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Kapat"
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr "Dosya Ekle"
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr "Mevcut"
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr "Cevap Yok"
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr "Bu fonksiyona erişmek için gerekli izinlere sahip değilsiniz"
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr "Gerekli Parça"
@@ -7554,165 +7573,177 @@ msgstr "Gerekli Parça"
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr "Yapım işi emri eksik"
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr "Tamamlanmış Yapım İşi Emri"
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr "Stok tahsisini düzenle"
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr "Stok tahsisini sil"
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Parçaları Seçin"
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr "Stok tahsisini onayla"
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr "Etiket Şablonu Seç"
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/vi/LC_MESSAGES/django.po b/InvenTree/locale/vi/LC_MESSAGES/django.po
index b2a86bbe7f..4b75e64c4e 100644
--- a/InvenTree/locale/vi/LC_MESSAGES/django.po
+++ b/InvenTree/locale/vi/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Vietnamese\n"
"Language: vi_VN\n"
@@ -34,8 +34,8 @@ msgstr ""
msgid "Enter date"
msgstr ""
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr ""
@@ -157,8 +157,8 @@ msgstr "Bình luận"
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr ""
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr ""
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr ""
msgid "Filename"
msgstr "Tên tập tin"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr ""
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr ""
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr ""
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr ""
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr ""
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr ""
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr ""
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr ""
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr ""
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr ""
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr ""
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr ""
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr ""
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr ""
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr ""
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr ""
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr ""
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr ""
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr ""
msgid "Confirm deletion of build output"
msgstr ""
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr ""
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr ""
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr ""
@@ -660,7 +656,7 @@ msgstr ""
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "Tạo đơn hàng"
@@ -683,7 +679,7 @@ msgstr ""
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr ""
@@ -718,9 +714,9 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr ""
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "Ngày hoàn thành"
@@ -815,7 +811,7 @@ msgstr "Ngày hoàn thành"
msgid "completed by"
msgstr ""
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr ""
@@ -828,7 +824,7 @@ msgstr ""
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr ""
@@ -840,7 +836,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr ""
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr ""
@@ -914,13 +910,13 @@ msgstr ""
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr ""
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "Trạng thái"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr ""
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr ""
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr ""
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr ""
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr ""
@@ -1135,7 +1158,7 @@ msgstr ""
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "Đã hoàn thành"
@@ -1146,7 +1169,7 @@ msgstr "Đã hoàn thành"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr ""
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr ""
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr ""
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr ""
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr ""
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr ""
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr ""
@@ -1265,7 +1268,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr ""
@@ -1446,19 +1449,7 @@ msgstr ""
msgid "Build output deleted"
msgstr ""
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr ""
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr ""
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr ""
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr ""
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr ""
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr ""
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr ""
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr ""
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr ""
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr ""
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr ""
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr ""
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr ""
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr ""
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr ""
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr ""
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr ""
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr ""
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr ""
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr ""
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr ""
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr ""
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr ""
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr ""
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr ""
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr ""
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr ""
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr ""
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr ""
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr "Hiển thị nguyên liệu mới nhất"
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr "Hiển thị nguyên liệu mới nhất trên trang chủ"
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr ""
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr ""
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr ""
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr ""
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr ""
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr ""
@@ -2433,7 +2420,7 @@ msgstr ""
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr ""
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr ""
@@ -2570,7 +2557,7 @@ msgstr ""
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr ""
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr ""
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr "Giá mua"
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr ""
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr ""
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr ""
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr ""
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr ""
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr "Số seri mới nhất"
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr ""
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr ""
msgid "Report Settings"
msgstr ""
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr ""
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr "Chỉnh sửa cài đặt toàn cục"
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr "Chỉnh sửa cài đặt người dùng"
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr ""
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr ""
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr ""
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr ""
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr ""
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr ""
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr ""
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr ""
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr ""
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr ""
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr ""
msgid "Important dates"
msgstr ""
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr ""
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr ""
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr ""
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr ""
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr ""
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr ""
diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po
index 5966a4fe21..13e69c27a0 100644
--- a/InvenTree/locale/zh/LC_MESSAGES/django.po
+++ b/InvenTree/locale/zh/LC_MESSAGES/django.po
@@ -3,8 +3,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2021-12-31 06:22+0000\n"
-"PO-Revision-Date: 2021-12-31 06:27\n"
+"POT-Creation-Date: 2022-01-10 03:54+0000\n"
+"PO-Revision-Date: 2022-01-10 03:57\n"
"Last-Translator: \n"
"Language-Team: Chinese Simplified\n"
"Language: zh_CN\n"
@@ -34,8 +34,8 @@ msgstr "未找到指定操作"
msgid "Enter date"
msgstr "输入日期"
-#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 build/forms.py:93
-#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57
+#: InvenTree/forms.py:126 build/forms.py:48 build/forms.py:69 order/forms.py:24
+#: order/forms.py:35 order/forms.py:46 order/forms.py:57
#: templates/account/email_confirm.html:20 templates/js/translated/forms.js:595
msgid "Confirm"
msgstr "确认"
@@ -157,8 +157,8 @@ msgstr "注释"
msgid "File comment"
msgstr "文件注释"
-#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1219
-#: common/models.py:1220 part/models.py:2258 part/models.py:2278
+#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213
+#: common/models.py:1214 part/models.py:2258 part/models.py:2278
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2534
msgid "User"
@@ -199,12 +199,12 @@ msgstr "选择无效"
#: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415
#: label/models.py:112 part/models.py:772 part/models.py:2442
-#: plugin/models.py:39 report/models.py:181
+#: plugin/models.py:40 report/models.py:181
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:47
#: templates/InvenTree/settings/plugin.html:124
#: templates/InvenTree/settings/plugin_settings.html:23
-#: templates/InvenTree/settings/settings.html:268
+#: templates/InvenTree/settings/settings.html:279
#: templates/js/translated/company.js:641 templates/js/translated/part.js:561
#: templates/js/translated/part.js:700 templates/js/translated/part.js:1624
#: templates/js/translated/stock.js:2327
@@ -224,7 +224,7 @@ msgstr "名称"
#: stock/templates/stock/location.html:93
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:327 templates/js/translated/bom.js:540
-#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345
+#: templates/js/translated/build.js:1682 templates/js/translated/company.js:345
#: templates/js/translated/company.js:551
#: templates/js/translated/company.js:840 templates/js/translated/order.js:836
#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258
@@ -252,83 +252,83 @@ msgstr "必须是有效数字"
msgid "Filename"
msgstr "文件名"
-#: InvenTree/settings.py:698
+#: InvenTree/settings.py:663
msgid "German"
msgstr "德语"
-#: InvenTree/settings.py:699
+#: InvenTree/settings.py:664
msgid "Greek"
msgstr "希腊语"
-#: InvenTree/settings.py:700
+#: InvenTree/settings.py:665
msgid "English"
msgstr "英语"
-#: InvenTree/settings.py:701
+#: InvenTree/settings.py:666
msgid "Spanish"
msgstr "西班牙语"
-#: InvenTree/settings.py:702
+#: InvenTree/settings.py:667
msgid "Spanish (Mexican)"
msgstr ""
-#: InvenTree/settings.py:703
+#: InvenTree/settings.py:668
msgid "French"
msgstr "法语"
-#: InvenTree/settings.py:704
+#: InvenTree/settings.py:669
msgid "Hebrew"
msgstr "希伯来语"
-#: InvenTree/settings.py:705
+#: InvenTree/settings.py:670
msgid "Italian"
msgstr "意大利语"
-#: InvenTree/settings.py:706
+#: InvenTree/settings.py:671
msgid "Japanese"
msgstr "日语"
-#: InvenTree/settings.py:707
+#: InvenTree/settings.py:672
msgid "Korean"
msgstr "韩语"
-#: InvenTree/settings.py:708
+#: InvenTree/settings.py:673
msgid "Dutch"
msgstr "荷兰语"
-#: InvenTree/settings.py:709
+#: InvenTree/settings.py:674
msgid "Norwegian"
msgstr "挪威语"
-#: InvenTree/settings.py:710
+#: InvenTree/settings.py:675
msgid "Polish"
msgstr "波兰语"
-#: InvenTree/settings.py:711
+#: InvenTree/settings.py:676
msgid "Portugese"
msgstr ""
-#: InvenTree/settings.py:712
+#: InvenTree/settings.py:677
msgid "Russian"
msgstr "俄语"
-#: InvenTree/settings.py:713
+#: InvenTree/settings.py:678
msgid "Swedish"
msgstr "瑞典语"
-#: InvenTree/settings.py:714
+#: InvenTree/settings.py:679
msgid "Thai"
msgstr "泰语"
-#: InvenTree/settings.py:715
+#: InvenTree/settings.py:680
msgid "Turkish"
msgstr "土耳其语"
-#: InvenTree/settings.py:716
+#: InvenTree/settings.py:681
msgid "Vietnamese"
msgstr "越南语"
-#: InvenTree/settings.py:717
+#: InvenTree/settings.py:682
msgid "Chinese"
msgstr "中文(简体)"
@@ -585,7 +585,7 @@ msgstr ""
#: build/forms.py:36 build/models.py:1286
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:35 common/models.py:1259
+#: build/templates/build/detail.html:35 common/models.py:1253
#: company/forms.py:42 company/templates/company/supplier_part.html:251
#: order/models.py:796 order/models.py:1207 order/serializers.py:810
#: order/templates/order/order_wizard/match_parts.html:30
@@ -600,13 +600,13 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:81
#: report/templates/report/inventree_test_report_base.html:139
#: stock/forms.py:142 stock/serializers.py:293
-#: stock/templates/stock/item_base.html:180
-#: stock/templates/stock/item_base.html:261
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:181
+#: stock/templates/stock/item_base.html:262
+#: stock/templates/stock/item_base.html:270
#: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:555
-#: templates/js/translated/build.js:240 templates/js/translated/build.js:440
-#: templates/js/translated/build.js:634 templates/js/translated/build.js:644
-#: templates/js/translated/build.js:1020 templates/js/translated/build.js:1367
+#: templates/js/translated/build.js:295 templates/js/translated/build.js:495
+#: templates/js/translated/build.js:689 templates/js/translated/build.js:699
+#: templates/js/translated/build.js:1075 templates/js/translated/build.js:1422
#: templates/js/translated/model_renderers.js:99
#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056
#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859
@@ -641,15 +641,11 @@ msgstr "确认创建生产产出"
msgid "Confirm deletion of build output"
msgstr "确认删除生产产出"
-#: build/forms.py:94
-msgid "Mark build as complete"
-msgstr "标记生产已完成"
-
-#: build/forms.py:107
+#: build/forms.py:89
msgid "Confirm cancel"
msgstr "确认取消"
-#: build/forms.py:107 build/views.py:65
+#: build/forms.py:89 build/views.py:65
msgid "Confirm build cancellation"
msgstr "确认生产取消"
@@ -660,7 +656,7 @@ msgstr "上级生产选项无效"
#: build/models.py:137 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:27
#: report/templates/report/inventree_build_order_base.html:106
-#: templates/js/translated/build.js:402
+#: templates/js/translated/build.js:457
msgid "Build Order"
msgstr "生产订单"
@@ -683,7 +679,7 @@ msgstr "相关生产订单"
#: part/templates/part/bom_upload/match_parts.html:30
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1124
+#: templates/js/translated/bom.js:547 templates/js/translated/build.js:1179
#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144
msgid "Reference"
msgstr "引用"
@@ -718,9 +714,9 @@ msgstr "此次生产匹配的订单"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/js/translated/barcode.js:383 templates/js/translated/bom.js:326
-#: templates/js/translated/bom.js:505 templates/js/translated/build.js:625
-#: templates/js/translated/build.js:993 templates/js/translated/build.js:1364
-#: templates/js/translated/build.js:1632 templates/js/translated/company.js:492
+#: templates/js/translated/bom.js:505 templates/js/translated/build.js:680
+#: templates/js/translated/build.js:1048 templates/js/translated/build.js:1419
+#: templates/js/translated/build.js:1687 templates/js/translated/company.js:492
#: templates/js/translated/company.js:749 templates/js/translated/order.js:84
#: templates/js/translated/order.js:586 templates/js/translated/order.js:1004
#: templates/js/translated/order.js:1576 templates/js/translated/order.js:1933
@@ -744,7 +740,7 @@ msgstr "相关销售订单"
msgid "SalesOrder to which this build is allocated"
msgstr "此次生产匹配的销售订单"
-#: build/models.py:247 templates/js/translated/build.js:1352
+#: build/models.py:247 templates/js/translated/build.js:1407
#: templates/js/translated/order.js:1564
msgid "Source Location"
msgstr "来源地点"
@@ -807,7 +803,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr "生产完成的目标日期。生产将在此日期之后逾期。"
#: build/models.py:300 order/models.py:252
-#: templates/js/translated/build.js:1703
+#: templates/js/translated/build.js:1758
msgid "Completion Date"
msgstr "完成日期:"
@@ -815,7 +811,7 @@ msgstr "完成日期:"
msgid "completed by"
msgstr "完成人"
-#: build/models.py:314 templates/js/translated/build.js:1674
+#: build/models.py:314 templates/js/translated/build.js:1729
msgid "Issued by"
msgstr "发布者"
@@ -828,7 +824,7 @@ msgstr "发布此生产订单的用户"
#: order/templates/order/order_base.html:170
#: order/templates/order/sales_order_base.html:182 part/models.py:971
#: report/templates/report/inventree_build_order_base.html:159
-#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864
+#: templates/js/translated/build.js:1741 templates/js/translated/order.js:864
msgid "Responsible"
msgstr "责任人"
@@ -840,7 +836,7 @@ msgstr "负责此生产订单的用户"
#: company/templates/company/manufacturer_part.html:102
#: company/templates/company/supplier_part.html:126
#: part/templates/part/part_base.html:354 stock/models.py:525
-#: stock/templates/stock/item_base.html:372
+#: stock/templates/stock/item_base.html:373
msgid "External Link"
msgstr "外部链接"
@@ -904,8 +900,8 @@ msgstr ""
msgid "Selected stock item not found in BOM"
msgstr ""
-#: build/models.py:1256 stock/templates/stock/item_base.html:344
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1605
+#: build/models.py:1256 stock/templates/stock/item_base.html:345
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:1660
#: templates/navbar.html:35
msgid "Build"
msgstr "生产"
@@ -914,13 +910,13 @@ msgstr "生产"
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1273 build/serializers.py:334 order/serializers.py:690
+#: build/models.py:1273 build/serializers.py:388 order/serializers.py:690
#: order/serializers.py:708 stock/serializers.py:577 stock/serializers.py:695
-#: stock/templates/stock/item_base.html:8
-#: stock/templates/stock/item_base.html:22
-#: stock/templates/stock/item_base.html:366
-#: templates/js/translated/build.js:413 templates/js/translated/build.js:418
-#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748
+#: stock/templates/stock/item_base.html:9
+#: stock/templates/stock/item_base.html:23
+#: stock/templates/stock/item_base.html:367
+#: templates/js/translated/build.js:468 templates/js/translated/build.js:473
+#: templates/js/translated/build.js:1421 templates/js/translated/build.js:1803
#: templates/js/translated/order.js:85 templates/js/translated/order.js:1577
#: templates/js/translated/order.js:1832 templates/js/translated/order.js:1837
#: templates/js/translated/order.js:1940 templates/js/translated/order.js:2030
@@ -945,7 +941,7 @@ msgstr "安装到"
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:137 build/serializers.py:363
+#: build/serializers.py:137 build/serializers.py:417
msgid "Build Output"
msgstr ""
@@ -967,10 +963,10 @@ msgstr ""
#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294
#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:730
-#: stock/serializers.py:971 stock/templates/stock/item_base.html:312
+#: stock/serializers.py:971 stock/templates/stock/item_base.html:313
#: templates/js/translated/barcode.js:384
-#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:425
-#: templates/js/translated/build.js:1032 templates/js/translated/order.js:508
+#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:480
+#: templates/js/translated/build.js:1087 templates/js/translated/order.js:508
#: templates/js/translated/order.js:1844 templates/js/translated/order.js:1955
#: templates/js/translated/order.js:1963 templates/js/translated/order.js:2044
#: templates/js/translated/part.js:179 templates/js/translated/stock.js:556
@@ -985,8 +981,8 @@ msgstr ""
#: build/serializers.py:197 build/templates/build/build_base.html:137
#: build/templates/build/detail.html:63 order/models.py:552
-#: order/serializers.py:247 stock/templates/stock/item_base.html:186
-#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661
+#: order/serializers.py:247 stock/templates/stock/item_base.html:187
+#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1716
#: templates/js/translated/order.js:591 templates/js/translated/order.js:840
#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1651
#: templates/js/translated/stock.js:2488 templates/js/translated/stock.js:2637
@@ -997,46 +993,74 @@ msgstr "状态"
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:259 build/serializers.py:308 part/models.py:2753
+#: build/serializers.py:249
+msgid "Accept Unallocated"
+msgstr ""
+
+#: build/serializers.py:250
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr ""
+
+#: build/serializers.py:260 templates/js/translated/build.js:149
+msgid "Required stock has not been fully allocated"
+msgstr "所需库存尚未完全分配"
+
+#: build/serializers.py:265
+msgid "Accept Incomplete"
+msgstr ""
+
+#: build/serializers.py:266
+msgid "Accept that the required number of build outputs have not been completed"
+msgstr ""
+
+#: build/serializers.py:276 templates/js/translated/build.js:153
+msgid "Required build quantity has not been completed"
+msgstr "所需生产数量尚未完成"
+
+#: build/serializers.py:285
+msgid "Build order has incomplete outputs"
+msgstr ""
+
+#: build/serializers.py:313 build/serializers.py:362 part/models.py:2753
#: part/models.py:2912
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:269
+#: build/serializers.py:323
msgid "Build output"
msgstr ""
-#: build/serializers.py:278
+#: build/serializers.py:332
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:325
+#: build/serializers.py:379
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:340 stock/serializers.py:584
+#: build/serializers.py:394 stock/serializers.py:584
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:354 order/models.py:277 order/serializers.py:240
+#: build/serializers.py:408 order/models.py:277 order/serializers.py:240
#: stock/models.py:365 stock/models.py:1077 stock/serializers.py:305
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/serializers.py:396 order/serializers.py:741
+#: build/serializers.py:450 order/serializers.py:741
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:402
+#: build/serializers.py:456
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:409
+#: build/serializers.py:463
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:437 order/serializers.py:984
+#: build/serializers.py:491 order/serializers.py:984
msgid "Allocation items must be provided"
msgstr ""
@@ -1073,7 +1097,6 @@ msgstr "删除生产"
#: build/templates/build/build_base.html:64
#: build/templates/build/build_base.html:65
-#: build/templates/build/build_base.html:231
msgid "Complete Build"
msgstr "生产完成"
@@ -1112,7 +1135,7 @@ msgstr ""
#: order/templates/order/order_base.html:156
#: order/templates/order/sales_order_base.html:163
#: report/templates/report/inventree_build_order_base.html:126
-#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854
+#: templates/js/translated/build.js:1753 templates/js/translated/order.js:854
#: templates/js/translated/order.js:1276
msgid "Target Date"
msgstr "预计日期"
@@ -1135,7 +1158,7 @@ msgstr "逾期"
#: build/templates/build/build_base.html:158
#: build/templates/build/detail.html:68 build/templates/build/detail.html:143
#: order/templates/order/sales_order_base.html:170
-#: templates/js/translated/build.js:1647
+#: templates/js/translated/build.js:1702
#: templates/js/translated/table_filters.js:370
msgid "Completed"
msgstr "已完成"
@@ -1146,7 +1169,7 @@ msgstr "已完成"
#: order/templates/order/sales_order_base.html:28
#: report/templates/report/inventree_build_order_base.html:136
#: report/templates/report/inventree_so_report.html:77
-#: stock/templates/stock/item_base.html:306
+#: stock/templates/stock/item_base.html:307
#: templates/js/translated/order.js:1218
msgid "Sales Order"
msgstr "销售订单"
@@ -1189,26 +1212,6 @@ msgstr ""
msgid "Are you sure you wish to cancel this build?"
msgstr "是否确定取消生产?"
-#: build/templates/build/complete.html:8
-msgid "Build Order is complete"
-msgstr "生产订单已完成"
-
-#: build/templates/build/complete.html:12
-msgid "Build Order is incomplete"
-msgstr "生产订单未完成"
-
-#: build/templates/build/complete.html:15
-msgid "Incompleted build outputs remain"
-msgstr ""
-
-#: build/templates/build/complete.html:18
-msgid "Required build quantity has not been completed"
-msgstr "所需生产数量尚未完成"
-
-#: build/templates/build/complete.html:21
-msgid "Required stock has not been fully allocated"
-msgstr "所需库存尚未完全分配"
-
#: build/templates/build/detail.html:16
msgid "Build Details"
msgstr "生产详情"
@@ -1230,12 +1233,12 @@ msgstr ""
msgid "Destination location not specified"
msgstr ""
-#: build/templates/build/detail.html:74 templates/js/translated/build.js:652
+#: build/templates/build/detail.html:74 templates/js/translated/build.js:707
msgid "Allocated Parts"
msgstr ""
#: build/templates/build/detail.html:81
-#: stock/templates/stock/item_base.html:330
+#: stock/templates/stock/item_base.html:331
#: templates/js/translated/stock.js:1665 templates/js/translated/stock.js:2644
#: templates/js/translated/table_filters.js:151
#: templates/js/translated/table_filters.js:238
@@ -1245,7 +1248,7 @@ msgstr ""
#: build/templates/build/detail.html:127
#: order/templates/order/order_base.html:143
#: order/templates/order/sales_order_base.html:157
-#: templates/js/translated/build.js:1669
+#: templates/js/translated/build.js:1724
msgid "Created"
msgstr "已创建"
@@ -1265,7 +1268,7 @@ msgstr "子生产订单"
msgid "Allocate Stock to Build"
msgstr "为生产分配库存"
-#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207
+#: build/templates/build/detail.html:177 templates/js/translated/build.js:1262
msgid "Unallocate stock"
msgstr "未分配库存"
@@ -1446,19 +1449,7 @@ msgstr "必须指定生成产出"
msgid "Build output deleted"
msgstr "生产产出已删除"
-#: build/views.py:261
-msgid "Complete Build Order"
-msgstr "生产订单完成"
-
-#: build/views.py:267
-msgid "Build order cannot be completed - incomplete outputs remain"
-msgstr ""
-
-#: build/views.py:278
-msgid "Completed build order"
-msgstr "已完成的生产订单"
-
-#: build/views.py:319
+#: build/views.py:286
msgid "Delete Build Order"
msgstr "删除生产订单"
@@ -1499,728 +1490,724 @@ msgstr ""
msgid "Select {name} file to upload"
msgstr ""
-#: common/models.py:340 common/models.py:1004 common/models.py:1212
+#: common/models.py:344 common/models.py:998 common/models.py:1206
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:342
+#: common/models.py:346
msgid "Settings value"
msgstr ""
-#: common/models.py:377
-msgid "Must be an integer value"
-msgstr ""
-
-#: common/models.py:382
+#: common/models.py:380
msgid "Chosen value is not a valid option"
msgstr ""
-#: common/models.py:405
+#: common/models.py:400
msgid "Value must be a boolean value"
msgstr ""
-#: common/models.py:416
+#: common/models.py:411
msgid "Value must be an integer value"
msgstr ""
-#: common/models.py:439
+#: common/models.py:434
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:559
+#: common/models.py:553
msgid "No group"
msgstr ""
-#: common/models.py:601
+#: common/models.py:595
msgid "Restart required"
msgstr ""
-#: common/models.py:602
+#: common/models.py:596
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/models.py:609
+#: common/models.py:603
msgid "InvenTree Instance Name"
msgstr ""
-#: common/models.py:611
+#: common/models.py:605
msgid "String descriptor for the server instance"
msgstr ""
-#: common/models.py:615
+#: common/models.py:609
msgid "Use instance name"
msgstr ""
-#: common/models.py:616
+#: common/models.py:610
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/models.py:622 company/models.py:100 company/models.py:101
+#: common/models.py:616 company/models.py:100 company/models.py:101
msgid "Company name"
msgstr "公司名称"
-#: common/models.py:623
+#: common/models.py:617
msgid "Internal company name"
msgstr "内部公司名称"
-#: common/models.py:628
+#: common/models.py:622
msgid "Base URL"
msgstr ""
-#: common/models.py:629
+#: common/models.py:623
msgid "Base URL for server instance"
msgstr ""
-#: common/models.py:635
+#: common/models.py:629
msgid "Default Currency"
msgstr ""
-#: common/models.py:636
+#: common/models.py:630
msgid "Default currency"
msgstr ""
-#: common/models.py:642
+#: common/models.py:636
msgid "Download from URL"
msgstr ""
-#: common/models.py:643
+#: common/models.py:637
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31
+#: common/models.py:643 templates/InvenTree/settings/sidebar.html:31
msgid "Barcode Support"
msgstr ""
-#: common/models.py:650
+#: common/models.py:644
msgid "Enable barcode scanner support"
msgstr "启用条形码扫描支持"
-#: common/models.py:656
+#: common/models.py:650
msgid "IPN Regex"
msgstr ""
-#: common/models.py:657
+#: common/models.py:651
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/models.py:661
+#: common/models.py:655
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/models.py:662
+#: common/models.py:656
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/models.py:668
+#: common/models.py:662
msgid "Allow Editing IPN"
msgstr ""
-#: common/models.py:669
+#: common/models.py:663
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/models.py:675
+#: common/models.py:669
msgid "Copy Part BOM Data"
msgstr ""
-#: common/models.py:676
+#: common/models.py:670
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/models.py:682
+#: common/models.py:676
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/models.py:683
+#: common/models.py:677
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/models.py:689
+#: common/models.py:683
msgid "Copy Part Test Data"
msgstr ""
-#: common/models.py:690
+#: common/models.py:684
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/models.py:696
+#: common/models.py:690
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/models.py:697
+#: common/models.py:691
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:703 part/models.py:2482 report/models.py:187
+#: common/models.py:697 part/models.py:2482 report/models.py:187
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:422
msgid "Template"
msgstr "模板"
-#: common/models.py:704
+#: common/models.py:698
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:710 part/models.py:919 templates/js/translated/bom.js:1068
+#: common/models.py:704 part/models.py:919 templates/js/translated/bom.js:1068
#: templates/js/translated/table_filters.js:168
#: templates/js/translated/table_filters.js:434
msgid "Assembly"
msgstr "组装"
-#: common/models.py:711
+#: common/models.py:705
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:717 part/models.py:925
+#: common/models.py:711 part/models.py:925
#: templates/js/translated/table_filters.js:438
msgid "Component"
msgstr "组件"
-#: common/models.py:718
+#: common/models.py:712
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:724 part/models.py:936
+#: common/models.py:718 part/models.py:936
msgid "Purchaseable"
msgstr "可购买"
-#: common/models.py:725
+#: common/models.py:719
msgid "Parts are purchaseable by default"
msgstr "商品默认可购买"
-#: common/models.py:731 part/models.py:941
+#: common/models.py:725 part/models.py:941
#: templates/js/translated/table_filters.js:446
msgid "Salable"
msgstr "可销售"
-#: common/models.py:732
+#: common/models.py:726
msgid "Parts are salable by default"
msgstr "商品默认可销售"
-#: common/models.py:738 part/models.py:931
+#: common/models.py:732 part/models.py:931
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:100
#: templates/js/translated/table_filters.js:450
msgid "Trackable"
msgstr "可追踪"
-#: common/models.py:739
+#: common/models.py:733
msgid "Parts are trackable by default"
msgstr "商品默认可跟踪"
-#: common/models.py:745 part/models.py:951
+#: common/models.py:739 part/models.py:951
#: part/templates/part/part_base.html:147
#: templates/js/translated/table_filters.js:42
msgid "Virtual"
msgstr "虚拟"
-#: common/models.py:746
+#: common/models.py:740
msgid "Parts are virtual by default"
msgstr "商品默认是虚拟的"
-#: common/models.py:752
+#: common/models.py:746
msgid "Show Import in Views"
msgstr "视图中显示导入"
-#: common/models.py:753
+#: common/models.py:747
msgid "Display the import wizard in some part views"
msgstr "在一些商品视图中显示导入向导"
-#: common/models.py:759
+#: common/models.py:753
msgid "Show Price in Forms"
msgstr "在表格中显示价格"
-#: common/models.py:760
+#: common/models.py:754
msgid "Display part price in some forms"
msgstr "以某些表格显示商品价格"
-#: common/models.py:771
+#: common/models.py:765
msgid "Show Price in BOM"
msgstr ""
-#: common/models.py:772
+#: common/models.py:766
msgid "Include pricing information in BOM tables"
msgstr ""
-#: common/models.py:778
+#: common/models.py:772
msgid "Show related parts"
msgstr "显示相关商品"
-#: common/models.py:779
+#: common/models.py:773
msgid "Display related parts for a part"
msgstr ""
-#: common/models.py:785
+#: common/models.py:779
msgid "Create initial stock"
msgstr "创建初始库存"
-#: common/models.py:786
+#: common/models.py:780
msgid "Create initial stock on part creation"
msgstr ""
-#: common/models.py:792
+#: common/models.py:786
msgid "Internal Prices"
msgstr "内部价格"
-#: common/models.py:793
+#: common/models.py:787
msgid "Enable internal prices for parts"
msgstr "启用内部商品价格"
-#: common/models.py:799
+#: common/models.py:793
msgid "Internal Price as BOM-Price"
msgstr "内部价格为BOM价格"
-#: common/models.py:800
+#: common/models.py:794
msgid "Use the internal price (if set) in BOM-price calculations"
msgstr "在 BOM价格计算中使用内部价格(如设置)"
-#: common/models.py:806
+#: common/models.py:800
msgid "Part Name Display Format"
msgstr ""
-#: common/models.py:807
+#: common/models.py:801
msgid "Format to display the part name"
msgstr ""
-#: common/models.py:814
+#: common/models.py:808
msgid "Enable Reports"
msgstr ""
-#: common/models.py:815
+#: common/models.py:809
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:821 templates/stats.html:25
+#: common/models.py:815 templates/stats.html:25
msgid "Debug Mode"
msgstr "调试模式"
-#: common/models.py:822
+#: common/models.py:816
msgid "Generate reports in debug mode (HTML output)"
msgstr "在调试模式生成报告(HTML输出)"
-#: common/models.py:828
+#: common/models.py:822
msgid "Page Size"
msgstr "页面大小"
-#: common/models.py:829
+#: common/models.py:823
msgid "Default page size for PDF reports"
msgstr "PDF 报表默认页面大小"
-#: common/models.py:839
+#: common/models.py:833
msgid "Test Reports"
msgstr "测试报表"
-#: common/models.py:840
+#: common/models.py:834
msgid "Enable generation of test reports"
msgstr "启用生成测试报表"
-#: common/models.py:846
+#: common/models.py:840
msgid "Stock Expiry"
msgstr "库存到期"
-#: common/models.py:847
+#: common/models.py:841
msgid "Enable stock expiry functionality"
msgstr "启用库存到期功能"
-#: common/models.py:853
+#: common/models.py:847
msgid "Sell Expired Stock"
msgstr "销售过期库存"
-#: common/models.py:854
+#: common/models.py:848
msgid "Allow sale of expired stock"
msgstr "允许销售过期库存"
-#: common/models.py:860
+#: common/models.py:854
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:861
+#: common/models.py:855
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:863
+#: common/models.py:857
msgid "days"
msgstr "天"
-#: common/models.py:868
+#: common/models.py:862
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:869
+#: common/models.py:863
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:875
+#: common/models.py:869
msgid "Stock Ownership Control"
msgstr "库存所有权控制"
-#: common/models.py:876
+#: common/models.py:870
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:882
+#: common/models.py:876
msgid "Group by Part"
msgstr "按商品分组"
-#: common/models.py:883
+#: common/models.py:877
msgid "Group stock items by part reference in table views"
msgstr ""
-#: common/models.py:889
+#: common/models.py:883
msgid "Build Order Reference Prefix"
msgstr "生产订单参考前缀"
-#: common/models.py:890
+#: common/models.py:884
msgid "Prefix value for build order reference"
msgstr ""
-#: common/models.py:895
+#: common/models.py:889
msgid "Build Order Reference Regex"
msgstr ""
-#: common/models.py:896
+#: common/models.py:890
msgid "Regular expression pattern for matching build order reference"
msgstr ""
-#: common/models.py:900
+#: common/models.py:894
msgid "Sales Order Reference Prefix"
msgstr ""
-#: common/models.py:901
+#: common/models.py:895
msgid "Prefix value for sales order reference"
msgstr ""
-#: common/models.py:906
+#: common/models.py:900
msgid "Purchase Order Reference Prefix"
msgstr ""
-#: common/models.py:907
+#: common/models.py:901
msgid "Prefix value for purchase order reference"
msgstr ""
-#: common/models.py:913
+#: common/models.py:907
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:914
+#: common/models.py:908
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:919
+#: common/models.py:913
msgid "Enable registration"
msgstr ""
-#: common/models.py:920
+#: common/models.py:914
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:925
+#: common/models.py:919
msgid "Enable SSO"
msgstr ""
-#: common/models.py:926
+#: common/models.py:920
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:931
+#: common/models.py:925
msgid "Email required"
msgstr ""
-#: common/models.py:932
+#: common/models.py:926
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:937
+#: common/models.py:931
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:938
+#: common/models.py:932
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:943
+#: common/models.py:937
msgid "Mail twice"
msgstr ""
-#: common/models.py:944
+#: common/models.py:938
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:949
+#: common/models.py:943
msgid "Password twice"
msgstr ""
-#: common/models.py:950
+#: common/models.py:944
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:955
+#: common/models.py:949
msgid "Group on signup"
msgstr ""
-#: common/models.py:956
+#: common/models.py:950
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:961
+#: common/models.py:955
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:962
+#: common/models.py:956
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:967
+#: common/models.py:961
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:968
+#: common/models.py:962
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:974
+#: common/models.py:968
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:975
+#: common/models.py:969
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:981
-msgid "Enable global setting integration"
-msgstr ""
-
-#: common/models.py:982
-msgid "Enable plugins to integrate into inventree global settings"
-msgstr ""
-
-#: common/models.py:988
+#: common/models.py:975
msgid "Enable app integration"
msgstr ""
-#: common/models.py:989
+#: common/models.py:976
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1035
+#: common/models.py:982
+msgid "Enable schedule integration"
+msgstr ""
+
+#: common/models.py:983
+msgid "Enable plugins to run scheduled tasks"
+msgstr ""
+
+#: common/models.py:1029
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1036
+#: common/models.py:1030
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1041
+#: common/models.py:1035
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1042
+#: common/models.py:1036
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1047
+#: common/models.py:1041
msgid "Show latest parts"
msgstr "显示最近商品"
-#: common/models.py:1048
+#: common/models.py:1042
msgid "Show latest parts on the homepage"
msgstr "在主页上显示最近商品"
-#: common/models.py:1053
+#: common/models.py:1047
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1054
+#: common/models.py:1048
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1060
+#: common/models.py:1054
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1061
+#: common/models.py:1055
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1066
+#: common/models.py:1060
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1067
+#: common/models.py:1061
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1072
+#: common/models.py:1066
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1073
+#: common/models.py:1067
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1078
+#: common/models.py:1072
msgid "Show low stock"
msgstr ""
-#: common/models.py:1079
+#: common/models.py:1073
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1084
+#: common/models.py:1078
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1085
+#: common/models.py:1079
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1090
+#: common/models.py:1084
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1085
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1096
+#: common/models.py:1090
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1097
+#: common/models.py:1091
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1102
+#: common/models.py:1096
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1103
+#: common/models.py:1097
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1108
+#: common/models.py:1102
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1109
+#: common/models.py:1103
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1114
+#: common/models.py:1108
msgid "Show overdue builds"
msgstr "显示逾期生产"
-#: common/models.py:1115
+#: common/models.py:1109
msgid "Show overdue builds on the homepage"
msgstr "在主页上显示逾期的生产"
-#: common/models.py:1120
+#: common/models.py:1114
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1121
+#: common/models.py:1115
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1126
+#: common/models.py:1120
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1127
+#: common/models.py:1121
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1132
+#: common/models.py:1126
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1133
+#: common/models.py:1127
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1138
+#: common/models.py:1132
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1139
+#: common/models.py:1133
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1145
+#: common/models.py:1139
msgid "Inline label display"
msgstr "内嵌标签显示"
-#: common/models.py:1146
+#: common/models.py:1140
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr "在浏览器中显示 PDF 标签,而不是以文件形式下载"
-#: common/models.py:1152
+#: common/models.py:1146
msgid "Inline report display"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1147
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr "在浏览器中显示 PDF 报告,而不是以文件形式下载"
-#: common/models.py:1159
+#: common/models.py:1153
msgid "Search Preview Results"
msgstr "搜索预览结果"
-#: common/models.py:1160
+#: common/models.py:1154
msgid "Number of results to show in search preview window"
msgstr "搜索预览窗口中显示的结果数"
-#: common/models.py:1166
+#: common/models.py:1160
msgid "Search Show Stock"
msgstr ""
-#: common/models.py:1167
+#: common/models.py:1161
msgid "Display stock levels in search preview window"
msgstr ""
-#: common/models.py:1173
+#: common/models.py:1167
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1174
+#: common/models.py:1168
msgid "Hide inactive parts in search preview window"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1174
msgid "Show Quantity in Forms"
msgstr "在表格中显示数量"
-#: common/models.py:1181
+#: common/models.py:1175
msgid "Display available part quantity in some forms"
msgstr "在某些表格中显示可用的商品数量"
-#: common/models.py:1187
+#: common/models.py:1181
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1188
+#: common/models.py:1182
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1188
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1195
+#: common/models.py:1189
msgid "InvenTree navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1260 company/forms.py:43
+#: common/models.py:1254 company/forms.py:43
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1267 company/serializers.py:264
+#: common/models.py:1261 company/serializers.py:264
#: company/templates/company/supplier_part.html:256
#: templates/js/translated/part.js:909 templates/js/translated/part.js:1860
msgid "Price"
msgstr "价格"
-#: common/models.py:1268
+#: common/models.py:1262
msgid "Unit price at specified quantity"
msgstr ""
@@ -2366,7 +2353,7 @@ msgid "Default currency used for this company"
msgstr "该公司使用的默认货币"
#: company/models.py:320 company/models.py:535 stock/models.py:469
-#: stock/templates/stock/item_base.html:141
+#: stock/templates/stock/item_base.html:142
msgid "Base Part"
msgstr ""
@@ -2377,7 +2364,7 @@ msgstr "选择商品"
#: company/models.py:335 company/templates/company/company_base.html:73
#: company/templates/company/manufacturer_part.html:91
#: company/templates/company/supplier_part.html:97
-#: stock/templates/stock/item_base.html:379
+#: stock/templates/stock/item_base.html:380
#: templates/js/translated/company.js:333
#: templates/js/translated/company.js:517
#: templates/js/translated/company.js:800 templates/js/translated/part.js:234
@@ -2412,7 +2399,7 @@ msgstr "制造商商品描述"
#: company/models.py:409 company/models.py:558
#: company/templates/company/manufacturer_part.html:6
#: company/templates/company/manufacturer_part.html:23
-#: stock/templates/stock/item_base.html:389
+#: stock/templates/stock/item_base.html:390
msgid "Manufacturer Part"
msgstr "制造商商品"
@@ -2433,7 +2420,7 @@ msgstr "参数值"
#: company/models.py:429 part/models.py:913 part/models.py:2450
#: part/templates/part/part_base.html:288
-#: templates/InvenTree/settings/settings.html:273
+#: templates/InvenTree/settings/settings.html:284
#: templates/js/translated/company.js:653 templates/js/translated/part.js:715
msgid "Units"
msgstr "单位"
@@ -2450,7 +2437,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:87 order/models.py:224
#: order/templates/order/order_base.html:112
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:219
-#: part/bom.py:247 stock/templates/stock/item_base.html:396
+#: part/bom.py:247 stock/templates/stock/item_base.html:397
#: templates/js/translated/company.js:337
#: templates/js/translated/company.js:774 templates/js/translated/order.js:823
#: templates/js/translated/part.js:215 templates/js/translated/part.js:857
@@ -2499,7 +2486,7 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr "最低收费(例如库存费)"
#: company/models.py:582 company/templates/company/supplier_part.html:112
-#: stock/models.py:493 stock/templates/stock/item_base.html:337
+#: stock/models.py:493 stock/templates/stock/item_base.html:338
#: templates/js/translated/company.js:850 templates/js/translated/stock.js:1791
msgid "Packaging"
msgstr "打包"
@@ -2570,7 +2557,7 @@ msgstr "从 URL 下载图片"
#: company/templates/company/company_base.html:83 order/models.py:547
#: order/templates/order/sales_order_base.html:115 stock/models.py:512
#: stock/models.py:513 stock/serializers.py:625
-#: stock/templates/stock/item_base.html:289
+#: stock/templates/stock/item_base.html:290
#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240
#: templates/js/translated/stock.js:2452
#: templates/js/translated/table_filters.js:397
@@ -2694,7 +2681,7 @@ msgid "New Sales Order"
msgstr "新建销售订单"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1004
+#: templates/js/translated/build.js:1059
msgid "Assigned Stock"
msgstr ""
@@ -2763,7 +2750,7 @@ msgstr "删除供应商商品"
#: company/templates/company/manufacturer_part.html:254
#: part/templates/part/detail.html:347 part/templates/part/detail.html:376
#: templates/js/translated/company.js:426 templates/js/translated/helpers.js:31
-#: users/models.py:209
+#: users/models.py:210
msgid "Delete"
msgstr "删除"
@@ -2816,7 +2803,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:477
-#: stock/templates/stock/item_base.html:401
+#: stock/templates/stock/item_base.html:402
#: templates/js/translated/company.js:790 templates/js/translated/stock.js:1748
msgid "Supplier Part"
msgstr "供应商商品"
@@ -3187,7 +3174,7 @@ msgstr ""
#: order/models.py:836 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:18
#: report/templates/report/inventree_po_report.html:77
-#: stock/templates/stock/item_base.html:351
+#: stock/templates/stock/item_base.html:352
#: templates/js/translated/order.js:801 templates/js/translated/part.js:832
#: templates/js/translated/stock.js:1725 templates/js/translated/stock.js:2433
msgid "Purchase Order"
@@ -3209,7 +3196,7 @@ msgid "Number of items received"
msgstr ""
#: order/models.py:872 part/templates/part/prices.html:176 stock/models.py:606
-#: stock/serializers.py:170 stock/templates/stock/item_base.html:358
+#: stock/serializers.py:170 stock/templates/stock/item_base.html:359
#: templates/js/translated/stock.js:1779
msgid "Purchase Price"
msgstr "采购价格"
@@ -3549,7 +3536,7 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_fields.html:71
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256
+#: templates/js/translated/build.js:300 templates/js/translated/build.js:1311
#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488
#: templates/js/translated/stock.js:593 templates/js/translated/stock.js:761
msgid "Remove row"
@@ -3742,7 +3729,7 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:48
-#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1188
+#: templates/js/translated/bom.js:720 templates/js/translated/build.js:1243
msgid "Actions"
msgstr ""
@@ -3965,7 +3952,7 @@ msgstr "提高搜索结果可见性的关键字"
#: part/models.py:809 part/models.py:2276 part/models.py:2525
#: part/templates/part/part_base.html:265
#: part/templates/part/set_category.html:15
-#: templates/InvenTree/settings/settings.html:172
+#: templates/InvenTree/settings/settings.html:183
#: templates/js/translated/part.js:1261
msgid "Category"
msgstr "类别"
@@ -4045,7 +4032,7 @@ msgstr ""
msgid "Can this part be sold to customers?"
msgstr "此商品可以销售给客户吗?"
-#: part/models.py:946 plugin/models.py:45
+#: part/models.py:946 plugin/models.py:46
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:96
#: templates/js/translated/table_filters.js:295
@@ -4161,7 +4148,7 @@ msgid "Parent Part"
msgstr ""
#: part/models.py:2482 part/models.py:2531 part/models.py:2532
-#: templates/InvenTree/settings/settings.html:167
+#: templates/InvenTree/settings/settings.html:178
msgid "Parameter Template"
msgstr "参数模板"
@@ -4173,7 +4160,7 @@ msgstr ""
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2536 templates/InvenTree/settings/settings.html:176
+#: part/models.py:2536 templates/InvenTree/settings/settings.html:187
msgid "Default Value"
msgstr "默认值"
@@ -4715,19 +4702,19 @@ msgid "Subscribe to notifications for this part"
msgstr ""
#: part/templates/part/part_base.html:43
-#: stock/templates/stock/item_base.html:34
+#: stock/templates/stock/item_base.html:35
#: stock/templates/stock/location.html:33
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:45
-#: stock/templates/stock/item_base.html:38
+#: stock/templates/stock/item_base.html:39
#: stock/templates/stock/location.html:35 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:46
-#: stock/templates/stock/item_base.html:54
+#: stock/templates/stock/item_base.html:55
#: stock/templates/stock/location.html:36
msgid "Print Label"
msgstr "打印标签"
@@ -4737,7 +4724,7 @@ msgid "Show pricing information"
msgstr ""
#: part/templates/part/part_base.html:56
-#: stock/templates/stock/item_base.html:109
+#: stock/templates/stock/item_base.html:110
#: stock/templates/stock/location.html:44
msgid "Stock actions"
msgstr ""
@@ -4852,7 +4839,7 @@ msgid "Latest Serial Number"
msgstr ""
#: part/templates/part/part_base.html:328
-#: stock/templates/stock/item_base.html:165
+#: stock/templates/stock/item_base.html:166
msgid "Search for serial number"
msgstr ""
@@ -5067,7 +5054,7 @@ msgstr ""
msgid "Create a new variant of template '%(full_name)s'."
msgstr ""
-#: part/templatetags/inventree_extras.py:113
+#: part/templatetags/inventree_extras.py:116
msgid "Unknown database"
msgstr ""
@@ -5172,38 +5159,42 @@ msgstr ""
msgid "Delete Internal Price Break"
msgstr ""
-#: plugin/integration.py:116
+#: plugin/integration.py:124
msgid "No author found"
msgstr ""
-#: plugin/integration.py:128
+#: plugin/integration.py:136
msgid "No date found"
msgstr ""
-#: plugin/models.py:25
+#: plugin/models.py:26
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:26
+#: plugin/models.py:27
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:31
+#: plugin/models.py:32
msgid "Key"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:40
+#: plugin/models.py:41
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:46
+#: plugin/models.py:47
msgid "Is the plugin active"
msgstr ""
+#: plugin/models.py:195
+msgid "Plugin"
+msgstr ""
+
#: plugin/samples/integration/sample.py:42
msgid "Enable PO"
msgstr ""
@@ -5212,36 +5203,60 @@ msgstr ""
msgid "Enable PO functionality in InvenTree interface"
msgstr ""
-#: plugin/serializers.py:46
+#: plugin/samples/integration/sample.py:48
+msgid "API Key"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:49
+msgid "Key required for accessing external API"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:52
+msgid "Numerical"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:53
+msgid "A numerical setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:58
+msgid "Choice Setting"
+msgstr ""
+
+#: plugin/samples/integration/sample.py:59
+msgid "A setting with multiple choices"
+msgstr ""
+
+#: plugin/serializers.py:50
msgid "Source URL"
msgstr ""
-#: plugin/serializers.py:47
+#: plugin/serializers.py:51
msgid "Source for the package - this can be a custom registry or a VCS path"
msgstr ""
-#: plugin/serializers.py:52
+#: plugin/serializers.py:56
msgid "Package Name"
msgstr ""
-#: plugin/serializers.py:53
+#: plugin/serializers.py:57
msgid "Name for the Plugin Package - can also contain a version indicator"
msgstr ""
-#: plugin/serializers.py:56
+#: plugin/serializers.py:60
msgid "Confirm plugin installation"
msgstr ""
-#: plugin/serializers.py:57
+#: plugin/serializers.py:61
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
msgstr ""
-#: plugin/serializers.py:72
+#: plugin/serializers.py:76
msgid "Installation not confirmed"
msgstr ""
-#: plugin/serializers.py:74
-msgid "Either packagenmae of url must be provided"
+#: plugin/serializers.py:78
+msgid "Either packagename of URL must be provided"
msgstr ""
#: report/api.py:234 report/api.py:278
@@ -5342,9 +5357,9 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:517 stock/templates/stock/item_base.html:155
-#: templates/js/translated/build.js:238 templates/js/translated/build.js:642
-#: templates/js/translated/build.js:1018
+#: stock/models.py:517 stock/templates/stock/item_base.html:156
+#: templates/js/translated/build.js:293 templates/js/translated/build.js:697
+#: templates/js/translated/build.js:1073
#: templates/js/translated/model_renderers.js:95
#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945
#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:415
@@ -5396,7 +5411,7 @@ msgid "Quantity is required"
msgstr ""
#: stock/forms.py:77 stock/forms.py:251 stock/models.py:574
-#: stock/templates/stock/item_base.html:192
+#: stock/templates/stock/item_base.html:193
#: templates/js/translated/stock.js:1701
msgid "Expiry Date"
msgstr ""
@@ -5446,7 +5461,7 @@ msgid "Confirm removal of installed stock items"
msgstr ""
#: stock/models.py:60 stock/models.py:611
-#: stock/templates/stock/item_base.html:415
+#: stock/templates/stock/item_base.html:416
msgid "Owner"
msgstr ""
@@ -5508,7 +5523,7 @@ msgstr ""
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:500 stock/templates/stock/item_base.html:297
+#: stock/models.py:500 stock/templates/stock/item_base.html:298
msgid "Installed In"
msgstr ""
@@ -5784,7 +5799,7 @@ msgstr ""
msgid "Test Data"
msgstr ""
-#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:56
+#: stock/templates/stock/item.html:68 stock/templates/stock/item_base.html:57
msgid "Test Report"
msgstr ""
@@ -5816,189 +5831,189 @@ msgstr ""
msgid "Delete Test Result"
msgstr ""
-#: stock/templates/stock/item_base.html:41
+#: stock/templates/stock/item_base.html:42
#: templates/js/translated/barcode.js:330
#: templates/js/translated/barcode.js:335
msgid "Unlink Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:43
+#: stock/templates/stock/item_base.html:44
msgid "Link Barcode"
msgstr ""
-#: stock/templates/stock/item_base.html:45 templates/stock_table.html:24
+#: stock/templates/stock/item_base.html:46 templates/stock_table.html:24
msgid "Scan to Location"
msgstr ""
-#: stock/templates/stock/item_base.html:52
+#: stock/templates/stock/item_base.html:53
msgid "Printing actions"
msgstr ""
-#: stock/templates/stock/item_base.html:71
+#: stock/templates/stock/item_base.html:72
msgid "Stock adjustment actions"
msgstr ""
-#: stock/templates/stock/item_base.html:75
+#: stock/templates/stock/item_base.html:76
#: stock/templates/stock/location.html:51 templates/stock_table.html:50
msgid "Count stock"
msgstr ""
-#: stock/templates/stock/item_base.html:78 templates/stock_table.html:48
+#: stock/templates/stock/item_base.html:79 templates/stock_table.html:48
msgid "Add stock"
msgstr ""
-#: stock/templates/stock/item_base.html:81 templates/stock_table.html:49
+#: stock/templates/stock/item_base.html:82 templates/stock_table.html:49
msgid "Remove stock"
msgstr ""
-#: stock/templates/stock/item_base.html:84
+#: stock/templates/stock/item_base.html:85
msgid "Serialize stock"
msgstr ""
-#: stock/templates/stock/item_base.html:88
+#: stock/templates/stock/item_base.html:89
#: stock/templates/stock/location.html:57
msgid "Transfer stock"
msgstr ""
-#: stock/templates/stock/item_base.html:91 templates/stock_table.html:54
+#: stock/templates/stock/item_base.html:92 templates/stock_table.html:54
msgid "Assign to customer"
msgstr ""
-#: stock/templates/stock/item_base.html:94
+#: stock/templates/stock/item_base.html:95
msgid "Return to stock"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:97
+#: stock/templates/stock/item_base.html:98
msgid "Uninstall"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:100
+#: stock/templates/stock/item_base.html:101
msgid "Install"
msgstr ""
-#: stock/templates/stock/item_base.html:114
+#: stock/templates/stock/item_base.html:115
msgid "Convert to variant"
msgstr ""
-#: stock/templates/stock/item_base.html:117
+#: stock/templates/stock/item_base.html:118
msgid "Duplicate stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:119
+#: stock/templates/stock/item_base.html:120
msgid "Edit stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:122
+#: stock/templates/stock/item_base.html:123
msgid "Delete stock item"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "previous page"
msgstr ""
-#: stock/templates/stock/item_base.html:160
+#: stock/templates/stock/item_base.html:161
msgid "Navigate to previous serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "next page"
msgstr ""
-#: stock/templates/stock/item_base.html:169
+#: stock/templates/stock/item_base.html:170
msgid "Navigate to next serial number"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#, python-format
msgid "This StockItem expired on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:196
+#: stock/templates/stock/item_base.html:197
#: templates/js/translated/table_filters.js:252
msgid "Expired"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#, python-format
msgid "This StockItem expires on %(item.expiry_date)s"
msgstr ""
-#: stock/templates/stock/item_base.html:198
+#: stock/templates/stock/item_base.html:199
#: templates/js/translated/table_filters.js:258
msgid "Stale"
msgstr ""
-#: stock/templates/stock/item_base.html:205
+#: stock/templates/stock/item_base.html:206
#: templates/js/translated/stock.js:1714
msgid "Last Updated"
msgstr ""
-#: stock/templates/stock/item_base.html:210
+#: stock/templates/stock/item_base.html:211
msgid "Last Stocktake"
msgstr ""
-#: stock/templates/stock/item_base.html:214
+#: stock/templates/stock/item_base.html:215
msgid "No stocktake performed"
msgstr ""
-#: stock/templates/stock/item_base.html:232
+#: stock/templates/stock/item_base.html:233
msgid "You are not in the list of owners of this item. This stock item cannot be edited."
msgstr ""
-#: stock/templates/stock/item_base.html:239
+#: stock/templates/stock/item_base.html:240
msgid "This stock item is in production and cannot be edited."
msgstr "此库存项目正在生产中,无法编辑。"
-#: stock/templates/stock/item_base.html:240
+#: stock/templates/stock/item_base.html:241
msgid "Edit the stock item from the build view."
msgstr ""
-#: stock/templates/stock/item_base.html:253
+#: stock/templates/stock/item_base.html:254
msgid "This stock item has not passed all required tests"
msgstr ""
-#: stock/templates/stock/item_base.html:261
+#: stock/templates/stock/item_base.html:262
msgid "This stock item is allocated to Sales Order"
msgstr ""
-#: stock/templates/stock/item_base.html:269
+#: stock/templates/stock/item_base.html:270
msgid "This stock item is allocated to Build Order"
msgstr ""
-#: stock/templates/stock/item_base.html:275
+#: stock/templates/stock/item_base.html:276
msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted."
msgstr ""
-#: stock/templates/stock/item_base.html:316
-#: templates/js/translated/build.js:1040
+#: stock/templates/stock/item_base.html:317
+#: templates/js/translated/build.js:1095
msgid "No location set"
msgstr "未设置仓储地点"
-#: stock/templates/stock/item_base.html:323
+#: stock/templates/stock/item_base.html:324
msgid "Barcode Identifier"
msgstr ""
-#: stock/templates/stock/item_base.html:365
+#: stock/templates/stock/item_base.html:366
msgid "Parent Item"
msgstr ""
-#: stock/templates/stock/item_base.html:383
+#: stock/templates/stock/item_base.html:384
msgid "No manufacturer set"
msgstr ""
-#: stock/templates/stock/item_base.html:408
+#: stock/templates/stock/item_base.html:409
msgid "Tests"
msgstr ""
-#: stock/templates/stock/item_base.html:498
+#: stock/templates/stock/item_base.html:499
msgid "Edit Stock Status"
msgstr ""
@@ -6417,7 +6432,7 @@ msgid "Changing the settings below require you to immediatly restart InvenTree.
msgstr ""
#: templates/InvenTree/settings/plugin.html:32
-msgid "Plugin list"
+msgid "Plugins"
msgstr ""
#: templates/InvenTree/settings/plugin.html:37
@@ -6532,41 +6547,45 @@ msgstr "采购订单设置"
msgid "Report Settings"
msgstr "报表设置"
-#: templates/InvenTree/settings/setting.html:28
+#: templates/InvenTree/settings/setting.html:30
msgid "No value set"
msgstr "未设置值"
-#: templates/InvenTree/settings/setting.html:39
+#: templates/InvenTree/settings/setting.html:41
msgid "Edit setting"
msgstr "编辑设置"
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:75
+msgid "Edit Plugin Setting"
+msgstr ""
+
+#: templates/InvenTree/settings/settings.html:77
msgid "Edit Global Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:74
+#: templates/InvenTree/settings/settings.html:79
msgid "Edit User Setting"
msgstr ""
-#: templates/InvenTree/settings/settings.html:157
+#: templates/InvenTree/settings/settings.html:168
msgid "No category parameter templates found"
msgstr "未找到类别参数模板"
-#: templates/InvenTree/settings/settings.html:179
-#: templates/InvenTree/settings/settings.html:278
+#: templates/InvenTree/settings/settings.html:190
+#: templates/InvenTree/settings/settings.html:289
msgid "Edit Template"
msgstr "编辑模板"
-#: templates/InvenTree/settings/settings.html:180
-#: templates/InvenTree/settings/settings.html:279
+#: templates/InvenTree/settings/settings.html:191
+#: templates/InvenTree/settings/settings.html:290
msgid "Delete Template"
msgstr "删除模板"
-#: templates/InvenTree/settings/settings.html:258
+#: templates/InvenTree/settings/settings.html:269
msgid "No part parameter templates found"
msgstr "未找到商品参数模板"
-#: templates/InvenTree/settings/settings.html:262
+#: templates/InvenTree/settings/settings.html:273
msgid "ID"
msgstr ""
@@ -6881,8 +6900,8 @@ msgstr ""
#: templates/about.html:11 templates/about.html:105
#: templates/js/translated/bom.js:395 templates/js/translated/modals.js:53
-#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662
-#: templates/js/translated/modals.js:965 templates/modals.html:15
+#: templates/js/translated/modals.js:573 templates/js/translated/modals.js:667
+#: templates/js/translated/modals.js:970 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7129,15 +7148,15 @@ msgstr ""
msgid "Add Attachment"
msgstr "添加附件"
-#: templates/base.html:96
+#: templates/base.html:97
msgid "Server Restart Required"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "A configuration option has been changed which requires a server restart"
msgstr ""
-#: templates/base.html:99
+#: templates/base.html:100
msgid "Contact your system administrator for further information"
msgstr ""
@@ -7165,8 +7184,8 @@ msgstr ""
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1134
-#: templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:579 templates/js/translated/build.js:1189
+#: templates/js/translated/build.js:1810
#: templates/js/translated/table_filters.js:178
msgid "Available"
msgstr "空闲"
@@ -7213,11 +7232,11 @@ msgstr ""
msgid "Remote image must not exceed maximum allowable file size"
msgstr ""
-#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035
+#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1040
msgid "No Response"
msgstr ""
-#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036
+#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1041
msgid "No response from the InvenTree server"
msgstr ""
@@ -7229,27 +7248,27 @@ msgstr ""
msgid "API request returned error code 400"
msgstr ""
-#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045
+#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1050
msgid "Error 401: Not Authenticated"
msgstr ""
-#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046
+#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1051
msgid "Authentication credentials not supplied"
msgstr ""
-#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050
+#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1055
msgid "Error 403: Permission Denied"
msgstr ""
-#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051
+#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1056
msgid "You do not have the required permissions to access this function"
msgstr ""
-#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055
+#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1060
msgid "Error 404: Resource Not Found"
msgstr ""
-#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056
+#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1061
msgid "The requested resource could not be located on the server"
msgstr ""
@@ -7261,11 +7280,11 @@ msgstr ""
msgid "HTTP method not allowed at URL"
msgstr ""
-#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1060
+#: templates/js/translated/api.js:217 templates/js/translated/modals.js:1065
msgid "Error 408: Timeout"
msgstr ""
-#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1061
+#: templates/js/translated/api.js:218 templates/js/translated/modals.js:1066
msgid "Connection timeout while requesting data from server"
msgstr ""
@@ -7334,7 +7353,7 @@ msgid "Unknown response from server"
msgstr ""
#: templates/js/translated/barcode.js:140
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "Invalid server response"
msgstr ""
@@ -7494,7 +7513,7 @@ msgstr ""
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1116
+#: templates/js/translated/bom.js:520 templates/js/translated/build.js:1171
msgid "Variant stock allowed"
msgstr ""
@@ -7538,7 +7557,7 @@ msgstr ""
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:830 templates/js/translated/build.js:860
+#: templates/js/translated/bom.js:830 templates/js/translated/build.js:915
msgid "No BOM items found"
msgstr ""
@@ -7546,7 +7565,7 @@ msgstr ""
msgid "Are you sure you want to delete this BOM item?"
msgstr ""
-#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1100
+#: templates/js/translated/bom.js:1086 templates/js/translated/build.js:1155
msgid "Required Part"
msgstr ""
@@ -7554,165 +7573,177 @@ msgstr ""
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:83
+#: templates/js/translated/build.js:84
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:117
+#: templates/js/translated/build.js:118
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:138
+#: templates/js/translated/build.js:139
+msgid "Build order is ready to be completed"
+msgstr ""
+
+#: templates/js/translated/build.js:144
+msgid "Build Order is incomplete"
+msgstr "生产订单未完成"
+
+#: templates/js/translated/build.js:172
+msgid "Complete Build Order"
+msgstr "生产订单完成"
+
+#: templates/js/translated/build.js:193
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:149
+#: templates/js/translated/build.js:204
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:158
+#: templates/js/translated/build.js:213
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:166
+#: templates/js/translated/build.js:221
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:189
+#: templates/js/translated/build.js:244
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:207
+#: templates/js/translated/build.js:262
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:225
+#: templates/js/translated/build.js:280
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:226
+#: templates/js/translated/build.js:281
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:280
+#: templates/js/translated/build.js:335
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:296
+#: templates/js/translated/build.js:351
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:446
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848
+#: templates/js/translated/build.js:484 templates/js/translated/order.js:1848
msgid "Location not specified"
msgstr "未指定仓储地点"
-#: templates/js/translated/build.js:608
+#: templates/js/translated/build.js:663
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766
+#: templates/js/translated/build.js:1112 templates/js/translated/build.js:1821
#: templates/js/translated/order.js:1982
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1114 templates/js/translated/build.js:1822
#: templates/js/translated/order.js:1983
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1077
+#: templates/js/translated/build.js:1132
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1087
+#: templates/js/translated/build.js:1142
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1112
+#: templates/js/translated/build.js:1167
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1129
+#: templates/js/translated/build.js:1184
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365
-#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227
+#: templates/js/translated/build.js:1194 templates/js/translated/build.js:1420
+#: templates/js/translated/build.js:1817 templates/js/translated/order.js:2227
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307
+#: templates/js/translated/build.js:1250 templates/js/translated/order.js:2307
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1199 templates/stock_table.html:53
+#: templates/js/translated/build.js:1254 templates/stock_table.html:53
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300
+#: templates/js/translated/build.js:1257 templates/js/translated/order.js:2300
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499
+#: templates/js/translated/build.js:1322 templates/js/translated/order.js:1499
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:1338 templates/js/translated/label.js:134
+#: templates/js/translated/build.js:1393 templates/js/translated/label.js:134
#: templates/js/translated/order.js:1550 templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "选择商品"
-#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551
+#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1551
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565
+#: templates/js/translated/build.js:1408 templates/js/translated/order.js:1565
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600
+#: templates/js/translated/build.js:1437 templates/js/translated/order.js:1600
msgid "Confirm stock allocation"
msgstr "确认库存分配"
-#: templates/js/translated/build.js:1383
+#: templates/js/translated/build.js:1438
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613
+#: templates/js/translated/build.js:1449 templates/js/translated/order.js:1613
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690
+#: templates/js/translated/build.js:1519 templates/js/translated/order.js:1690
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:1582
+#: templates/js/translated/build.js:1637
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1206
+#: templates/js/translated/build.js:1654 templates/js/translated/part.js:1206
#: templates/js/translated/part.js:1617 templates/js/translated/stock.js:1512
#: templates/js/translated/stock.js:2321
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:1619
+#: templates/js/translated/build.js:1674
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2540
+#: templates/js/translated/build.js:1735 templates/js/translated/stock.js:2540
msgid "No user information"
msgstr "没有用户信息"
-#: templates/js/translated/build.js:1692
+#: templates/js/translated/build.js:1747
msgid "No information"
msgstr ""
-#: templates/js/translated/build.js:1743
+#: templates/js/translated/build.js:1798
msgid "No parts allocated for"
msgstr ""
@@ -7943,12 +7974,12 @@ msgid "Select Label Template"
msgstr "选择标签模板"
#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120
-#: templates/js/translated/modals.js:594
+#: templates/js/translated/modals.js:599
msgid "Cancel"
msgstr "取消"
#: templates/js/translated/modals.js:77 templates/js/translated/modals.js:119
-#: templates/js/translated/modals.js:661 templates/js/translated/modals.js:964
+#: templates/js/translated/modals.js:666 templates/js/translated/modals.js:969
#: templates/modals.html:28 templates/modals.html:51
msgid "Submit"
msgstr ""
@@ -7965,39 +7996,39 @@ msgstr ""
msgid "Show Error Information"
msgstr ""
-#: templates/js/translated/modals.js:593
+#: templates/js/translated/modals.js:598
msgid "Accept"
msgstr ""
-#: templates/js/translated/modals.js:650
+#: templates/js/translated/modals.js:655
msgid "Loading Data"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Invalid response from server"
msgstr ""
-#: templates/js/translated/modals.js:916
+#: templates/js/translated/modals.js:921
msgid "Form data missing from server response"
msgstr ""
-#: templates/js/translated/modals.js:928
+#: templates/js/translated/modals.js:933
msgid "Error posting form data"
msgstr ""
-#: templates/js/translated/modals.js:1025
+#: templates/js/translated/modals.js:1030
msgid "JSON response missing form data"
msgstr ""
-#: templates/js/translated/modals.js:1040
+#: templates/js/translated/modals.js:1045
msgid "Error 400: Bad Request"
msgstr ""
-#: templates/js/translated/modals.js:1041
+#: templates/js/translated/modals.js:1046
msgid "Server returned error code 400"
msgstr ""
-#: templates/js/translated/modals.js:1064
+#: templates/js/translated/modals.js:1069
msgid "Error requesting form data"
msgstr ""
@@ -8694,7 +8725,7 @@ msgstr ""
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:910 users/models.py:205
+#: templates/js/translated/stock.js:910 users/models.py:206
msgid "Add"
msgstr "添加"
@@ -9106,48 +9137,52 @@ msgstr ""
msgid "rows per page"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:376
+msgid "Showing all rows"
+msgstr ""
+
+#: templates/js/translated/tables.js:378
msgid "Showing"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "to"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "of"
msgstr ""
-#: templates/js/translated/tables.js:374
+#: templates/js/translated/tables.js:378
msgid "rows"
msgstr ""
-#: templates/js/translated/tables.js:377 templates/search_form.html:6
+#: templates/js/translated/tables.js:382 templates/search_form.html:6
#: templates/search_form.html:7
msgid "Search"
msgstr "搜索"
-#: templates/js/translated/tables.js:380
+#: templates/js/translated/tables.js:385
msgid "No matching results"
msgstr ""
-#: templates/js/translated/tables.js:383
+#: templates/js/translated/tables.js:388
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:386
+#: templates/js/translated/tables.js:391
msgid "Refresh"
msgstr ""
-#: templates/js/translated/tables.js:389
+#: templates/js/translated/tables.js:394
msgid "Toggle"
msgstr ""
-#: templates/js/translated/tables.js:392
+#: templates/js/translated/tables.js:397
msgid "Columns"
msgstr ""
-#: templates/js/translated/tables.js:395
+#: templates/js/translated/tables.js:400
msgid "All"
msgstr ""
@@ -9331,35 +9366,35 @@ msgstr "权限"
msgid "Important dates"
msgstr "重要日期"
-#: users/models.py:192
+#: users/models.py:193
msgid "Permission set"
msgstr "权限设置"
-#: users/models.py:200
+#: users/models.py:201
msgid "Group"
msgstr "群组"
-#: users/models.py:203
+#: users/models.py:204
msgid "View"
msgstr "视图"
-#: users/models.py:203
+#: users/models.py:204
msgid "Permission to view items"
msgstr "查看项目权限"
-#: users/models.py:205
+#: users/models.py:206
msgid "Permission to add items"
msgstr "添加项目权限"
-#: users/models.py:207
+#: users/models.py:208
msgid "Change"
msgstr "更改"
-#: users/models.py:207
+#: users/models.py:208
msgid "Permissions to edit items"
msgstr "编辑项目权限"
-#: users/models.py:209
+#: users/models.py:210
msgid "Permission to delete items"
msgstr "删除项目权限"