diff --git a/InvenTree/InvenTree/static/css/inventree.css b/InvenTree/InvenTree/static/css/inventree.css index 98aead45ee..0b74204094 100644 --- a/InvenTree/InvenTree/static/css/inventree.css +++ b/InvenTree/InvenTree/static/css/inventree.css @@ -215,7 +215,7 @@ } .treeview .list-group-item { - padding: 10px 5px; + padding: 3px 5px; } .treeview .list-group-item .indent { @@ -539,7 +539,7 @@ padding: 0px 10px; } -.breadcrump { +.breadcrumb { margin-bottom: 5px; margin-left: 5px; margin-right: 10px; diff --git a/InvenTree/build/models.py b/InvenTree/build/models.py index d6dd0df0e3..392c773e6b 100644 --- a/InvenTree/build/models.py +++ b/InvenTree/build/models.py @@ -1150,7 +1150,7 @@ class BuildItem(models.Model): bom_item_valid = False - if self.bom_item: + if self.bom_item and self.build: """ A BomItem object has already been assigned. This is valid if: @@ -1162,10 +1162,13 @@ class BuildItem(models.Model): iii) The Part referenced by the StockItem is a valid substitute for the BomItem """ - if self.build and self.build.part == self.bom_item.part: - + if self.build.part == self.bom_item.part: bom_item_valid = self.bom_item.is_stock_item_valid(self.stock_item) + elif self.bom_item.inherited: + if self.build.part in self.bom_item.part.get_descendants(include_self=False): + bom_item_valid = self.bom_item.is_stock_item_valid(self.stock_item) + # If the existing BomItem is *not* valid, try to find a match if not bom_item_valid: diff --git a/InvenTree/build/serializers.py b/InvenTree/build/serializers.py index 2ea898f66c..452864e3c4 100644 --- a/InvenTree/build/serializers.py +++ b/InvenTree/build/serializers.py @@ -309,14 +309,20 @@ class BuildAllocationItemSerializer(serializers.Serializer): ) def validate_bom_item(self, bom_item): - - # TODO: Fix this validation - allow for variants and substitutes! + """ + Check if the parts match! + """ build = self.context['build'] - # BomItem must point to the same 'part' as the parent build + # BomItem should point to the same 'part' as the parent build if build.part != bom_item.part: - raise ValidationError(_("bom_item.part must point to the same part as the build order")) + + # If not, it may be marked as "inherited" from a parent part + if bom_item.inherited and build.part in bom_item.part.get_descendants(include_self=False): + pass + else: + raise ValidationError(_("bom_item.part must point to the same part as the build order")) return bom_item diff --git a/InvenTree/build/templates/build/build_base.html b/InvenTree/build/templates/build/build_base.html index 428e40649f..48ef98b2b1 100644 --- a/InvenTree/build/templates/build/build_base.html +++ b/InvenTree/build/templates/build/build_base.html @@ -77,6 +77,11 @@ src="{% static 'img/blank_image.png' %}" {% trans "Part" %} {{ build.part.full_name }} + + + {% trans "Quantity" %} + {{ build.quantity }} + {% trans "Build Description" %} @@ -127,11 +132,6 @@ src="{% static 'img/blank_image.png' %}" {% block details_right %} - - - - - diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 768f5a9304..60d2d7b8a4 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:46\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Datum eingeben" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Bestätigen" @@ -85,8 +86,8 @@ msgstr "E-Mail Adressen müssen übereinstimmen." msgid "Duplicate serial: {n}" msgstr "Doppelte Seriennummer: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Keine gültige Menge" @@ -122,7 +123,7 @@ msgstr "Fehlende Datei" msgid "Missing external link" msgstr "Fehlender externer Link" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Anhang" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Datei zum Anhängen auswählen" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "Link" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "Link zu einer externen URL" @@ -152,10 +153,10 @@ msgstr "Kommentar" msgid "File comment" msgstr "Datei-Kommentar" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Benutzer" @@ -194,10 +195,15 @@ msgstr "Ungültige Auswahl" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Name" @@ -206,22 +212,23 @@ msgstr "Name" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Beschreibung" @@ -241,83 +248,83 @@ msgstr "Muss eine gültige Nummer sein" msgid "Filename" msgstr "Dateiname" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Deutsch" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Griechisch" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Englisch" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Spanisch" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "Spanisch (Mexikanisch)" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Französisch" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "Hebräisch" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "Italienisch" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Japanisch" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Koreanisch" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Niederländisch" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Norwegisch" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Polnisch" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "Portugiesisch" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Russisch" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "Schwedisch" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Thailändisch" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Türkisch" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "Vietnamesisch" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Chinesisch" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "InvenTree Status-Überprüfung fehlgeschlagen" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "Ausstehend" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "Platziert" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "Fertig" @@ -361,8 +370,8 @@ msgstr "Verloren" msgid "Returned" msgstr "Zurückgegeben" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "Versendet" @@ -442,7 +451,7 @@ msgstr "Vom übergeordneten Element geteilt" msgid "Split child item" msgstr "Unterobjekt geteilt" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "Zum Kunden geschickt" @@ -522,55 +531,55 @@ msgstr "Passwort eingeben" msgid "Password fields must match" msgstr "Passwörter stimmen nicht überein" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "Systeminformationen" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "barcode_data Parameter angeben" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "Keine Treffer für Barcode" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "Treffer für Barcode gefunden" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "Lagerartikel-Parameter muss angegeben werden" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "Keine passende Lagerartikel gefunden" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" -msgstr "Barcode entspricht bereits einem Lagerartikel" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" +msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" -msgstr "Barcode entspricht bereits Bestandslagerort" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" +msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" -msgstr "Barcode entspricht bereits Teil" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" +msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" -msgstr "Barcode ist bereits Lagerartikel zugeordnet" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" +msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" -msgstr "Barcode Lagerartikel zugeordnet" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" +msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "Barcode Lagerartikel zugeordnet" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "Anzahl" @@ -603,9 +615,9 @@ msgstr "Anzahl" msgid "Enter quantity for build output" msgstr "Menge der Endprodukte angeben" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "Seriennummer" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "Bauauftrag" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "Bauaufträge" @@ -658,13 +670,13 @@ msgstr "Bauaufträge" msgid "Build Order Reference" msgstr "Bauauftragsreferenz" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "Referenz" @@ -683,7 +695,7 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "Teil" @@ -721,7 +735,8 @@ 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:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "Quell-Lagerort" @@ -761,7 +776,7 @@ msgstr "Bauauftrags-Status" msgid "Build status code" msgstr "Bau-Statuscode" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "Losnummer" @@ -769,12 +784,12 @@ msgstr "Losnummer" msgid "Batch code for this build output" msgstr "Losnummer für dieses Endprodukt" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "Erstelldatum" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "geplantes Fertigstellungsdatum" @@ -782,8 +797,8 @@ msgstr "geplantes Fertigstellungsdatum" msgid "Target date for build completion. Build will be overdue after this date." msgstr "Zieldatum für Bauauftrag-Fertigstellung." -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "Fertigstellungsdatum" @@ -791,7 +806,7 @@ msgstr "Fertigstellungsdatum" msgid "completed by" msgstr "Fertiggestellt von" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "Aufgegeben von" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "Nutzer der diesen Bauauftrag erstellt hat" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "Verantwortlicher Benutzer" @@ -815,7 +830,7 @@ msgstr "Nutzer der für diesen Bauauftrag zuständig ist" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "Externer Link" @@ -823,18 +838,19 @@ msgstr "Externer Link" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "Notizen" @@ -867,7 +883,7 @@ msgstr "Zugewiesene Menge ({q}) darf nicht verfügbare Menge ({a}) übersteigen" msgid "Stock item is over-allocated" msgstr "BestandObjekt ist zu oft zugewiesen" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "Reserviermenge muss größer null sein" @@ -880,8 +896,8 @@ 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:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "Bauauftrag" @@ -889,14 +905,17 @@ msgstr "Bauauftrag" msgid "Build to allocate parts" msgstr "Bauauftrag starten um Teile zuzuweisen" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "Lagerartikel" @@ -936,16 +955,17 @@ msgstr "Dieses Endprodukt wurde bereits fertiggestellt" msgid "This build output is not fully allocated" msgstr "Dieses Endprodukt ist nicht vollständig zugewiesen" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "Lagerort" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" 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:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "Status" @@ -984,16 +1004,16 @@ msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen" msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part muss auf dasselbe Teil verweisen wie der Bauauftrag" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "Teil muss auf Lager sein" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Verfügbare Menge ({q}) überschritten" @@ -1006,7 +1026,7 @@ msgstr "Für Zuweisung von verfolgten Teilen muss ein Endprodukt angegeben sein" 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:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "Zuweisungen müssen angegeben werden" @@ -1079,11 +1099,11 @@ msgstr "Bestand wurde Bauauftrag noch nicht vollständig zugewiesen" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "Zieldatum" @@ -1096,28 +1116,28 @@ msgstr "Bauauftrag war fällig am %(target)s" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "Überfällig" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "Fertig" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "Auftrag" @@ -1191,8 +1211,8 @@ msgstr "Ausgangs-Lager" msgid "Stock can be taken from any available location." msgstr "Bestand kann jedem verfügbaren Lagerort entnommen werden." -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "Ziel-Lager" @@ -1200,22 +1220,22 @@ msgstr "Ziel-Lager" msgid "Destination location not specified" msgstr "Ziel-Lagerort nicht angegeben" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "Zugewiesene Teile" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "Losnummer" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "Erstellt" @@ -1235,7 +1255,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:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "Bestandszuordnung aufheben" @@ -1257,7 +1277,7 @@ msgstr "Benötigte Teile bestellen" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "Teile bestellen" @@ -1309,8 +1329,8 @@ msgstr "Fertiggestellte Endprodukte" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "Bauauftrags-Notizen" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "Endprodukt anlegen" msgid "Maximum output quantity is " msgstr "Maximale Endproduktmenge ist " -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "Seriennummern existieren bereits" @@ -1400,7 +1420,7 @@ msgstr "Endprodukt entfernen" msgid "Confirm unallocation of build stock" msgstr "Entfernung von Bestands-Zuordnung bestätigen" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "Bestätigungsbox bestätigen" @@ -1469,7 +1489,7 @@ msgstr "{name.title()} Datei" msgid "Select {name} file to upload" msgstr "{name} Datei zum Hochladen auswählen" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 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)" @@ -1557,7 +1577,7 @@ msgstr "Von URL herunterladen" 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:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "Bacode-Feature verwenden" @@ -1623,7 +1643,7 @@ msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "Vorlage" @@ -1633,7 +1653,7 @@ msgstr "Teile sind standardmäßig Vorlagen" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "Baugruppe" @@ -1642,7 +1662,7 @@ 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:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "Komponente" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "Artikel sind grundsätzlich kaufbar" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "Verkäuflich" @@ -1670,7 +1690,7 @@ msgstr "Artikel sind grundsätzlich verkaufbar" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "Nachverfolgbar" @@ -1932,230 +1952,262 @@ msgstr "Gruppe bei Registrierung" msgid "Group to which new users are assigned on registration" msgstr "Gruppe der neue Benutzer bei der Registrierung zugewiesen werden" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "Abonnierte Teile anzeigen" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "Zeige abonnierte Teile auf der Startseite" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "Abonnierte Kategorien anzeigen" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "Zeige abonnierte Teilkategorien auf der Startseite" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "Neueste Teile anzeigen" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "Zeige neueste Teile auf der Startseite" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "Aktuelle Teile-Stände" -#: common/models.py:1020 +#: 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:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "Nicht validierte Stücklisten anzeigen" -#: common/models.py:1027 +#: 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:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "Neueste Bestandänderungen anzeigen" -#: common/models.py:1033 +#: 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:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "aktueller Bestand" -#: common/models.py:1039 +#: 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:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "Niedrigen Bestand anzeigen" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "Zeige geringen Bestand auf der Startseite" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "Lerren Bestand anzeigen" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "Zeige aufgebrauchte Lagerartikel auf der Startseite" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "Benötigten Bestand anzeigen" -#: common/models.py:1057 +#: 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:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "Abgelaufenen Bestand anzeigen" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "Zeige abgelaufene Lagerbestände auf der Startseite" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "Alten Bestand anzeigen" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "Zeige überfällige Lagerartikel auf der Startseite" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "Ausstehende Bauaufträge anzeigen" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "Zeige ausstehende Bauaufträge auf der Startseite" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "Zeige überfällige Bauaufträge" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "Zeige überfällige Bauaufträge auf der Startseite" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "Ausstehende POs anzeigen" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "Zeige ausstehende POs auf der Startseite" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "Überfällige POs anzeigen" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "Zeige überfällige POs auf der Startseite" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "Ausstehende SOs anzeigen" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "Zeige ausstehende SOs auf der Startseite" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "Überfällige SOs anzeigen" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "Zeige überfällige SOs auf der Startseite" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "Label inline anzeigen" -#: common/models.py:1112 +#: 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:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "Berichte inline anzeigen" -#: common/models.py:1119 +#: 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:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "Anzahl Suchergebnisse" -#: common/models.py:1126 +#: 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:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "Suche Bestand anzeigen" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "Bestand in Suchvorschau anzeigen" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "Inaktive Teile ausblenden" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "Inaktive Teile in der Suchvorschau ausblenden" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "zeige Bestand in Eingabemasken" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "Zeige den verfügbaren Bestand in einigen Eingabemasken" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "Esc-Taste schließt Formulare" -#: common/models.py:1154 +#: 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:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "Fixierter Navigationsleiste" -#: common/models.py:1161 +#: 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:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "Preisstaffelungs Anzahl" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "Preis" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "Stückpreis für die angegebene Anzahl" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "Datei hochgeladen" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "Vorheriger Schritt" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "URL" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "Firmenbeschreibung" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "Website" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "Produziert diese Firma Teile?" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "Währung" @@ -2293,12 +2347,12 @@ msgstr "Währung" 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:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "Basisteil" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "Teil auswählen" @@ -2319,7 +2373,7 @@ msgstr "Hersteller auswählen" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "MPN" @@ -2349,8 +2403,8 @@ msgstr "Parametername" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "Wert" @@ -2360,7 +2414,7 @@ msgstr "Parameterwert" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "Einheiten" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "Zulieferer" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "Zulieferer auswählen" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "SKU (Lagerbestandseinheit)" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "Mindestpreis" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "Verpackungen" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "Firma" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "Bestellung anlegen" @@ -2493,11 +2547,12 @@ msgstr "Neues Bild hochladen" msgid "Download image from URL" msgstr "Bild von URL herunterladen" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "Kunde" @@ -2580,7 +2635,7 @@ msgstr "Zulieferer-Bestand" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "Bestellungen" @@ -2602,7 +2657,7 @@ msgstr "Neue Bestellung" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "Aufträge" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "Neuer Auftrag" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "Zugeordneter Bestand" @@ -2644,7 +2699,7 @@ msgstr "Zulieferer-Liste" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "Hersteller" @@ -2673,7 +2728,7 @@ msgstr "Internes Teil" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "Zulieferer" @@ -2687,7 +2742,7 @@ msgstr "Zuliefererteil entfernen" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "Löschen" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "Zugewiesene Lagerartikel" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "Zuliefererteil" @@ -2767,7 +2822,7 @@ msgstr "Neuen Lagerartikel hinzufügen" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "Neuer Lagerartikel" @@ -2817,11 +2872,11 @@ msgstr "Preisstaffel löschen" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "Bestand" @@ -2844,7 +2899,7 @@ msgstr "Bepreisung" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "Lagerartikel" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "Neuer Hersteller" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "Kunden" @@ -2960,284 +3015,374 @@ msgstr "Abfragefilter (kommagetrennte Liste mit Schlüssel=Wert-Paaren)" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "Teile-Abfragefilter (kommagetrennte Liste mit Schlüssel=Wert-Paaren)" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "Bestellung aufgeben" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "Bestellung als vollständig markieren" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "Bestellung stornieren" -#: order/forms.py:70 -msgid "Ship order" -msgstr "Bestellung versenden" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "Seriennummern für Lagerartikel eingeben" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "Menge der Lagerartikel eingeben" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "Bestellungs-Beschreibung" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "Link auf externe Seite" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "Erstellt von" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "Nutzer oder Gruppe der/die für diesen Auftrag zuständig ist/sind" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "Bestell-Notizen" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "Bestell-Referenz" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "Bestellungs-Status" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "Firma bei der die Teile bestellt werden" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "Zulieferer-Referenz" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "Zulieferer Bestellreferenz" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "Empfangen von" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "Aufgabedatum" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "Datum an dem die Bestellung aufgegeben wurde" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "Ziel-Versanddatum" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Geplantes Lieferdatum für Auftrag." -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "Datum an dem der Auftrag fertigstellt wurde" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "Teile-Zulieferer muss dem Zulieferer der Bestellung entsprechen" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "Anzahl muss eine Ganzzahl sein" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "Anzahl muss eine positive Zahl sein" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "Firma an die die Teile verkauft werden" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "Kundenreferenz" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "Bestellreferenz" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "Zieldatum für Auftrags-Fertigstellung." -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "Versanddatum" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "Versand von" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" -msgstr "Bestellung kann nicht versendet werden weil er nicht anhängig ist" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" +msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "Anzahl" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "Position - Referenz" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "Position - Notizen" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "Bestellung" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "Bestellung" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "Zuliefererteil" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "Empfangen" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "Empfangene Objekt-Anzahl" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "Preis" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "Preis pro Einheit" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "Wo möchte der Käufer diesen Artikel gelagert haben?" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "Verkaufspreis" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "Stückverkaufspreis" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "Lagerartikel wurde nicht zugewiesen" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "Kann Lagerartikel keiner Zeile mit einem anderen Teil hinzufügen" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "Kann Lagerartikel keiner Zeile ohne Teil hinzufügen" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Die zugeordnete Anzahl darf nicht die verfügbare Anzahl überschreiten" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "Zu viele Lagerartikel zugewiesen" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "Anzahl für serialisierte Lagerartikel muss 1 sein" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "Position" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "Position" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "Lagerartikel für Zuordnung auswählen" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "Anzahl für Bestandszuordnung eingeben" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "Kaufpreiswährung" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "Position" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "Position stimmt nicht mit Kaufauftrag überein" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "Zielort für empfangene Teile auswählen" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "Barcode-Hash" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "Einzigartiger Identifikator" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "Barcode ist bereits in Verwendung" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "Positionen müssen angegeben werden" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "Ziel-Lagerort muss angegeben werden" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "Barcode muss eindeutig sein" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "Verkaufspreis-Währung" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "Elemente empfangen" msgid "Receive Items" msgstr "Teile empfangen" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "Auftrag fertigstellen" @@ -3290,12 +3436,23 @@ msgstr "Bestellungsbeschreibung" msgid "Order Status" msgstr "Bestellstatus" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "Aufgegeben" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "Bestellung bearbeiten" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "Zeile entfernen" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "Bestellungen auswählen oder anlegen." #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "Positionen" @@ -3489,7 +3648,7 @@ msgstr "Bestellungs-Positionen" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "Position hinzufügen" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "Empfangene Teile" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "Notizen zur Bestellung" @@ -3520,25 +3679,30 @@ msgid "Print packing list" msgstr "Paketliste drucken" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" -msgstr "Versenden" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" +msgstr "" #: order/templates/order/sales_order_base.html:102 msgid "This Sales Order has not been fully allocated" msgstr "Dieser Auftrag ist nicht vollständig zugeordnet" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "Kundenreferenz" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "Auftrag bearbeiten" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "Abbruch dieser Bestellung bedeutet, dass sie nicht länger bearbeitbar i msgid "Sales Order Items" msgstr "Auftrags-Positionen" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." -msgstr "Dieser Auftrag ist nicht vollständig zugeordnet. Wenn der Auftrag als versendet markiert wird, kann er nicht mehr geändert werden." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" +msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." -msgstr "Vor dem Versand sicherstellen, dass die Zuordnung richtig ist." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" +msgstr "Aktionen" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" -msgstr "Einige Positionen dieses Auftrags sind überzugeordnet" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" +msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "Vor dem Versand sicherstellen, dass dies richtig ist." - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "Versenden dieses Auftrags bedeutet, dass der Auftrag nicht mehr bearbeitbar ist." - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "Teilebestand per Seriennummer zuweisen" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "Bestellung stornieren" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "Bestellstornierung bestätigen" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "Bestellung kann nicht verworfen werden" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "Auftrag stornieren" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "Bestellung aufgeben" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "Bestellungstätigung bestätigen" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "Bestellung plaziert" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "Fertigstellung bestätigen" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "Bestellung als vollständig markieren" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "Versand bestätigen" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "Versand fehlgeschlagen" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "Zuliefererteile zuordnen" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "Preise aktualisieren" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "{n} Teile bestellt" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "Seriennummern zuweisen" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "{n} Positionen zugeordnet" - -#: order/views.py:907 -msgid "Select line item" -msgstr "Position auswählen" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "Kein passends Teil für Seriennummer {serial} gefunden" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "{serial} ist nicht auf Lager" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "{serial} bereits einem Auftrag zugeordnet" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "Auftrag nicht gefunden" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "Preis nicht gefunden" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "Stückpreis für {part} auf {price} aktualisiert" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "{part} Stückpreis auf {price} und Menge auf {qty} aktualisiert" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "Muss größer als 0 sein" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "Muss eine gültige Nummer sein" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "Standort für anfänglichen Bestand angeben" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "Dieses Feld ist erforderlich" @@ -3828,8 +3946,8 @@ msgstr "Teil-Kategorien" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "Teile" @@ -3895,7 +4013,7 @@ msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "Kategorie" @@ -3906,7 +4024,7 @@ msgstr "Teile-Kategorie" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "IPN (Interne Produktnummer)" @@ -3975,10 +4093,11 @@ 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:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "Aktiv" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "Ein Test mit diesem Namen besteht bereits für dieses Teil" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "Test-Name" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "Beschreibung für diesen Test eingeben" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "Benötigt" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "Einheit des Parameters" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "Parameter Vorlage" @@ -4098,7 +4217,7 @@ msgstr "Wert" msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "Standard-Wert" @@ -4175,7 +4294,7 @@ msgstr "Varianten zulassen" msgid "Stock items for variant parts can be used for this BOM item" msgstr "Bestand von Varianten kann für diese Stücklisten-Position verwendet werden" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "Menge muss eine Ganzzahl sein" @@ -4724,8 +4843,8 @@ msgstr "Teildetails anzeigen" msgid "This part is a variant of %(link)s" msgstr "Dieses Teil ist eine Variante von %(link)s" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "Auf Lager" @@ -5101,6 +5220,78 @@ msgstr "Interne Preisspanne bearbeiten" msgid "Delete Internal Price Break" msgstr "Interne Preisspanne löschen" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5199,12 +5390,12 @@ msgid "Stock Item Test Report" msgstr "Lagerartikel Test-Bericht" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "Seriennummer" @@ -5213,17 +5404,19 @@ msgid "Test Results" msgstr "Testergebnisse" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "Test" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "Ergebnis" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "Datum" @@ -5241,302 +5434,318 @@ msgid "Installed Items" msgstr "Verbaute Objekte" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "Seriennummer" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "Menge ist erforderlich" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "Ablaufdatum" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "Ablaufdatum für diesen Lagerartikel" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "Eindeutige Seriennummern eingeben (oder leer lassen)" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "Lagerort für serial" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "Seriennummern" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "Anzahl der eindeutigen Seriennummern (muss mit der Anzahl übereinstimmen)" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr " Transaktionsnotizen hinzufügen (optional)" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "Lagerartikel für Einbau" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "Anzahl darf die verfügbare Anzahl nicht überschreiten" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "Ziel Lagerort für unverbaute Objekte" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "nicht mehr verbauen bestätigen" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "Entfernen der verbauten Lagerartikel bestätigen" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "Besitzer" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "Besitzer auswählen" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "Ein Lagerartikel mit dieser Seriennummer existiert bereits" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "Teile-Typ ('{pf}') muss {pe} sein" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "Anzahl muss für Objekte mit Seriennummer 1 sein" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Seriennummer kann nicht gesetzt werden wenn die Anzahl größer als 1 ist" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "Teil kann nicht zu sich selbst gehören" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "Teil muss eine Referenz haben wenn is_building wahr ist" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "Referenz verweist nicht auf das gleiche Teil" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "Eltern-Lagerartikel" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "Basis-Teil" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "Passendes Zuliefererteil für diesen Lagerartikel auswählen" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Bestand-Lagerort" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "Die Verpackung dieses Lagerartikel ist gelagert in" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "verbaut in" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "Ist dieses Teil in einem anderen verbaut?" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "Seriennummer für dieses Teil" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "Losnummer für diesen Lagerartikel" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "Bestand" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "Quellbau" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "Bauauftrag für diesen Lagerartikel" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "Quelle Bestellung" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "Bestellung für diesen Lagerartikel" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "Ziel-Auftrag" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Ablaufdatum für Lagerartikel. Bestand wird danach als abgelaufen gekennzeichnet" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "Löschen wenn leer" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "Diesen Lagerartikel löschen wenn der Bestand aufgebraucht ist" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "Lagerartikel-Notizen" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "Preis für eine Einheit bei Einkauf" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "Zur Löschung vorgesehen" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "Dieser Lagerartikel wird vom Hintergrund-Prozess gelöscht" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "Teil ist nicht verfolgbar" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "Anzahl muss eine Ganzzahl sein" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "Anzahl darf nicht die verfügbare Anzahl überschreiten ({n})" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "Seriennummern muss eine Liste von Ganzzahlen sein" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "Anzahl stimmt nicht mit den Seriennummern überein" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "Seriennummern {exists} existieren bereits" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagerartikel kann nicht bewegt werden, da kein Bestand vorhanden ist" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "Eintrags-Notizen" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "Wert muss für diesen Test angegeben werden" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "Anhang muss für diesen Test hochgeladen werden" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "Name des Tests" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "Testergebnis" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "Test Ausgabe Wert" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "Test Ergebnis Anhang" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "Test Notizen" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "Kaufpreis für diesen Lagerartikel" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "Kaufwährung dieses Lagerartikels" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "Anzahl der zu serialisierenden Lagerartikel eingeben" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "Anzahl darf nicht die verfügbare Menge überschreiten ({q})" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "Seriennummern für neue Teile eingeben" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "Ziel-Bestand" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "Optionales Notizfeld" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "Seriennummern können diesem Teil nicht zugewiesen werden" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "Eine Liste der Lagerbestände muss angegeben werden" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "Primärschlüssel Lagerelement" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "Bestandsbewegungsnotizen" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "Eine Liste der Lagerbestände muss angegeben werden" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "Informationen zur Bestand-Verfolgung" @@ -5574,7 +5783,7 @@ msgstr "Testdaten hinzufügen" msgid "Installed Stock Items" msgstr "Installierte Lagerartikel" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "Lagerartikel installieren" @@ -5634,7 +5843,7 @@ msgstr "Bestand serialisieren" msgid "Transfer stock" msgstr "Bestand verschieben" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "Kunden zuweisen" @@ -5696,7 +5905,7 @@ 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:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "abgelaufen" @@ -5706,12 +5915,12 @@ 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:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "überfällig" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "Zuletzt aktualisiert" @@ -5740,14 +5949,12 @@ msgid "This stock item has not passed all required tests" msgstr "Dieser Lagerartikel hat nicht alle Tests bestanden" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" -msgstr "Dieser Lagerartikel ist dem Auftrag %(link)s zugewiesen (Menge: %(qty)s)" +msgid "This stock item is allocated to Sales Order" +msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" -msgstr "Dieser Lagerartikel ist dem Bauauftrag %(link)s zugewiesen (Menge: %(qty)s)" +msgid "This stock item is allocated to Build Order" +msgstr "" #: stock/templates/stock/item_base.html:269 msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted." @@ -5762,7 +5969,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "Dieser Bestand wird automatisch gelöscht wenn der Bestand aufgebraucht ist." #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "Kein Lagerort gesetzt" @@ -5912,7 +6119,7 @@ msgstr "Untergeordnete Objekte" msgid "The following stock items will be uninstalled" msgstr "Die folgenden Lagerartikel werden nicht mehr verbaut" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "Lagerartikel umwandeln" @@ -5937,8 +6144,7 @@ msgstr "Sind Sie sicher, dass Sie diesen Lagerartikel-Verfolgungs-Eintrag lösch msgid "Edit Stock Location" msgstr "Lagerartikel-Ort bearbeiten" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "Eigentümer notwendig (Eigentümerkontrolle aktiv)" @@ -5947,86 +6153,78 @@ msgid "Stock Location QR code" msgstr "QR-Code für diesen Lagerort" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "Kunden zuweisen" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "Kunde muss angegeben werden" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "zurück ins Lager" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "gültigen Lagerort angeben" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "Lagerartikel retoure vom Kunden" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "alle Testdaten löschen" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "Löschen Testdaten bestätigen" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "Lagerartikel-QR-Code" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "Lagerartikel deinstallieren" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "Bestands-Anpassung bestätigen" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "Lagerartikel deinstalliert" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "Lagerartikel bearbeiten" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "Neuen Lagerort erstellen" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "Neuen Lagerartikel hinzufügen" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "Bestand duplizieren" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "Anzahl kann nicht negativ sein" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "Bestand-Lagerort löschen" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "Lagerartikel löschen" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "Bestand-Tracking-Eintrag löschen" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "Bestand-Verfolgungs-Eintrag bearbeiten" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "Bestand-Verfolgungs-Eintrag hinzufügen" @@ -6046,6 +6244,14 @@ msgstr "Seite nicht gefunden" msgid "The requested page does not exist" msgstr "Seite existiert nicht" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "Index" @@ -6155,7 +6361,7 @@ msgid "Server Settings" msgstr "Server Einstellungen" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "Anmeldeeinstellungen" @@ -6163,6 +6369,24 @@ msgstr "Anmeldeeinstellungen" msgid "Signup" msgstr "Anmelden" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "Einstellungen" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "Teil-Einstellungen" @@ -6179,6 +6403,126 @@ msgstr "Teil importieren" msgid "Part Parameter Templates" msgstr "Teil-Parametervorlage" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "Admin" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "Commit-Datum" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "Commit-Hash" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "Bestellungs-Einstellungen" @@ -6196,86 +6540,82 @@ msgstr "Kein Wert angegeben" msgid "Edit setting" msgstr "Einstellungen ändern" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "Einstellungen" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "Allgemeine Einstellungen bearbeiten" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "Benutzereinstellungen bearbeiten" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "Keine Kategorie-Parametervorlagen gefunden" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "Vorlage bearbeiten" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "Vorlage löschen" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "Keine Teilparametervorlagen gefunden" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "ID" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "Benutzer-Einstellungen" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "Kontoeinstellungen" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "Anzeigeeinstellungen" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "Startseite" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "Sucheinstellungen" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "Etikettendruck" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "Berichte" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "Allgemeine Einstellungen" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "Serverkonfiguration" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "Währungen" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "Kategorien" @@ -6493,8 +6833,8 @@ msgstr "InvenTree-Versionsinformationen" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Schliessen" @@ -6515,14 +6855,6 @@ msgstr "Aktuell" msgid "Update Available" msgstr "Aktualisierung verfügbar" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "Commit-Hash" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "Commit-Datum" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "InvenTree-Dokumentation" @@ -6720,8 +7052,9 @@ msgstr "Benötigte Menge" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "Verfügbar" @@ -6767,11 +7100,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:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "Keine Antwort" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "keine Antwort vom InvenTree Server" @@ -6783,35 +7116,35 @@ 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:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "Fehler 401: Nicht Angemeldet" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "Authentication Kredentials nicht angegeben" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "Fehler 403: keine Berechtigung" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 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:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "Fehler 404: Ressource nicht gefunden" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "Die angefragte Ressource kann auf diesem Server nicht gefunden werden" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "Fehler 408: Zeitüberschreitung" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "Verbindungszeitüberschreitung bei der Datenanforderung" @@ -6880,7 +7213,7 @@ msgid "Unknown response from server" msgstr "Unbekannte Antwort von Server erhalten" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "Ungültige Antwort von Server" @@ -6888,7 +7221,7 @@ msgstr "Ungültige Antwort von Server" msgid "Scan barcode data below" msgstr "Barcode unterhalb scannen" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "Barcode scannen" @@ -6908,7 +7241,7 @@ msgstr "Dadurch wird die Verknüpfung zwischen diesem Lagerartikel und dem Barco msgid "Unlink" msgstr "Entfernen" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "Lagerartikel entfernen" @@ -6978,7 +7311,7 @@ msgstr "Stücklisten Ersatzteile bearbeiten" msgid "Substitutes Available" msgstr "Ersatzteile verfügbar" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "Varianten erlaubt" @@ -7002,11 +7335,6 @@ msgstr "Durchschnittlicher Kaufpreis" msgid "View BOM" msgstr "Stückliste anzeigen" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "Aktionen" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "Stücklisten-Position kontrollieren" @@ -7027,7 +7355,7 @@ msgstr "Stücklisten-Position bearbeiten" msgid "Delete BOM Item" msgstr "Stücklisten-Position löschen" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "Keine Stücklisten-Position(en) gefunden" @@ -7035,7 +7363,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:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "benötigtes Teil" @@ -7043,165 +7371,165 @@ msgstr "benötigtes Teil" msgid "Inherited from parent BOM" msgstr "Geerbt von übergeordneter Stückliste" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "Bauauftrag bearbeiten" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "Bauauftrag erstellen" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "Lagerartikel zu diesem Endprodukt zuweisen" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "Bestand von Endpordukt zurücknehmen" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "Endprodukt fertigstellen" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "Endprodukt entfernen" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 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:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "Lagerartikel zurücknehmen" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "Endprodukte auswählen" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "Mindestens ein Endprodukt muss ausgewählt werden" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "Endprodukt" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "Endprodukte fertigstellen" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "Keine Allokationen für Bauauftrag gefunden" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "Standort nicht angegeben" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "Keine aktiven Endprodukte gefunden" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "Bestands-Zuordnung bearbeiten" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "Bestands-Zuordnung löschen" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "Zuordnung bearbeiten" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "Zuordnung entfernen" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "Ersatzteile verfügbar" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "Anzahl pro" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "Zugeordnet" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "Bestand bauen" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "Bestand bestellen" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "Bestand zuweisen" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "Anzahl für Bestandszuordnung eingeben" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 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:1348 +#: templates/js/translated/build.js:1353 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:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "Bestandszuordnung bestätigen" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "Lagerartikel für Bauauftrag zuweisen" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "Keine passenden Lagerstandorte" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "Keine passenden Lagerbestände" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "Keine Bauaufträge passen zur Anfrage" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "Auswählen" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "Bauauftrag ist überfällig" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "Keine Benutzerinformation" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "Keine Information" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "Keine Teile zugeordnet zu" @@ -7221,7 +7549,7 @@ msgstr "Herstellerteil ändern" msgid "Delete Manufacturer Part" msgstr "Herstellerteil löschen" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "Zulieferer hinzufügen" @@ -7356,20 +7684,20 @@ msgstr "Anzeigevorgang nicht erlaubt" msgid "Enter a valid number" msgstr "Gib eine gültige Nummer ein" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Fehler in Formular" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "Keine Ergebnisse gefunden" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "Suche" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "Eingabe leeren" @@ -7382,7 +7710,7 @@ msgid "NO" msgstr "NEIN" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "Lagerartikel auswählen" @@ -7431,62 +7759,62 @@ msgstr "Label auswählen" msgid "Select Label Template" msgstr "Label-Vorlage auswählen" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "Abbrechen" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "Abschicken" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "Formulartitel" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "Warte auf Server..." -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "Fehler-Informationen anzeigen" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "Akzeptieren" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "Lade Daten" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "ungültige Antwort vom Server" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "Formulardaten fehlen bei Serverantwort" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "Formulardaten fehlerhaft" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "JSON Antwort enthält keine Formulardaten" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "Fehler 400: Ungültige Anfrage" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "Fehler 400 von Server erhalten" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "Fehler bei Formulardaten-Anfrage" @@ -7514,176 +7842,245 @@ msgstr "Teil-ID" msgid "Order ID" msgstr "Bestell-ID" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "Kategorie-ID" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "Herstellerteil-ID" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "Zuliefererteil-ID" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "Kunden hinzufügen" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "Auftrag anlegen" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "Bestellung exportieren" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "Format" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "Dateiformat auswählen" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "Positionen auswählen" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "Mindestens eine Position muss ausgewählt werden" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "Zu erhaltende Menge" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "Status" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "Bestellnummer" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "Bestellt" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "Empfangen" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "Empfang der Teile bestätigen" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "Bestellpositionen erhalten" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "Keine Bestellungen gefunden" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "Bestellung überfällig" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "Position bearbeiten" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "Position löschen" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "Keine Positionen gefunden" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "Summe" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "Stück-Preis" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "Gesamtpreis" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "Position bearbeiten" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "Position löschen" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "Position empfangen" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "Keine Aufträge gefunden" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "Ungültiger Kunde" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "Keine Allokationen für Verkaufsaufträge gefunden" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "Bestandszuordnung bearbeiten" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "Löschvorgang bestätigen" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "Bestands-Zuordnung löschen" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "an Kunde versand" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "Lagerstandort nicht angegeben" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "Erledigt" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "Seriennummern zuweisen" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "Bestand kaufen" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "Preis berechnen" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " -msgstr "Position löschen " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" +msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" -msgstr "Bestand zuweisen" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" +msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "Seriennummern zuweisen" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "Stückpreis aktualisieren" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "Keine passenden Positionen gefunden" @@ -7828,12 +8225,12 @@ msgid "No category" msgstr "Keine Kategorie" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "Bestand niedrig" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "Listenansicht" @@ -7841,7 +8238,7 @@ msgstr "Listenansicht" msgid "Display as grid" msgstr "Rasteransicht" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "Baumansicht" @@ -7849,7 +8246,7 @@ msgstr "Baumansicht" msgid "Subscribed category" msgstr "Abonnierte Kategorie" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "Pfad" @@ -7857,11 +8254,11 @@ msgstr "Pfad" msgid "No test templates matching query" msgstr "Keine zur Anfrage passenden Testvorlagen" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "Testergebnis bearbeiten" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "Testergebnis löschen" @@ -7900,6 +8297,10 @@ msgstr "Einzelpreis" msgid "Single Price Difference" msgstr "Einzelpreisdifferenz" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "Lagerartikel ausgewählt" @@ -7966,300 +8367,316 @@ msgstr "Aufträge auswählen" msgid "Sales Order(s) must be selected before printing report" msgstr "Auftrag muss vor dem Berichtsdruck ausgewählt werden" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "Lagerartikel serialisieren" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "Nächste verfügbare Seriennummer" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "Letzte Seriennummer" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "Lager-Serialisierung bestätigen" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "Übergeordneter Lagerort" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "Neuer Lagerstandort" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "Dieser Teil kann nicht serialisiert werden" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "Ausgangsmenge für diesen Lagerartikel eingeben" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Seriennummern für neue Lagerartikel eingeben (oder leer lassen)" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "Neuer Lagerartikel erstellt" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "Mehrere Lagerartikel erstellt" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "Seriennummer finden" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "Seriennummer eingeben" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "Eine Seriennummer eingeben" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "Keine passende Seriennummer" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "Mehrere Ergebnisse gefunden" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "Bestand exportieren" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "Einschließlich Unterstandorte" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "Lagerartikel in untergeordneten Lagerorten einschließen" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "Bestand verschieben" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "Verschieben" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "Bestand zählen" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "Anzahl" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "Bestand entfernen" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "Entfernen" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "Bestand hinzufügen" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "Hinzufügen" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "Bestand löschen" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "Menge von serialisiertem Bestand kann nicht bearbeitet werden" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "Bestandsanzahl angeben" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "Sie müssen mindestens einen Lagerartikel auswählen" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "ERFOLGREICH" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "FEHLGESCHLAGEN" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "KEIN ERGEBNIS" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "Testergebnis hinzufügen" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "Keine Testergebnisse gefunden" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "Testdatum" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "In Arbeit" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "In Lagerartikel installiert" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "an Kunde versand" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "Auftrag zugewiesen" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "Kein Lagerort gesetzt" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "Lagerartikel wird produziert" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "Lagerartikel wurde Auftrag zugewiesen" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "Lagerartikel wurde Kunden zugewiesen" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "Lagerartikel ist abgelaufen" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "Lagerartikel läuft demnächst ab" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" -msgstr "Lagerartikel zugewiesen" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" +msgstr "Serialisierter Lagerartikel wurde zugewiesen" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "Lagerartikel wurde vollständig zugewiesen" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "Lagerartikel wurde teilweise zugewiesen" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "Lagerartikel in anderem Element verbaut" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "Lagerartikel abgewiesen" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "Lagerartikel verloren" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "Lagerartikel zerstört" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "gelöscht" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "Inventur" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "Zuliefererteil nicht angegeben" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "Keine zur Anfrage passenden Lagerartikel" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "Teile" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "lose" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "Lagerorte" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "unbekannter Lagerort" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "Status setzen" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "Status Code setzen" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "Status Code muss ausgewählt werden" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "Ungültiges Datum" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "Details" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "Standort nicht mehr vorhanden" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "Bestellung existiert nicht mehr" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "Kunde existiert nicht mehr" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "Lagerartikel existiert nicht mehr" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "Hinzugefügt" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "Entfernt" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "Tracking-Eintrag bearbeiten" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "Tracking-Eintrag löschen" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "Keine installierten Elemente" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "Lagerartikel entfernen" @@ -8280,7 +8697,7 @@ msgid "Allow Variant Stock" msgstr "Bestand an Varianten zulassen" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "Unter-Lagerorte einschließen" @@ -8290,54 +8707,54 @@ msgstr "Lagerorte einschließen" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "Unterkategorien einschließen" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "Abonniert" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "Hat Seriennummer" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "Seriennummer >=" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "Seriennummer größer oder gleich" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "Seriennummer <=" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "Seriennummern kleiner oder gleich" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "Seriennummer" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "Losnummer" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "Aktive Teile" @@ -8358,101 +8775,111 @@ msgid "Item has been allocated" msgstr "Teil wurde zugeordnet" #: templates/js/translated/table_filters.js:179 +msgid "Stock is available for use" +msgstr "Lagerartikel ist zur Verwendung verfügbar" + +#: templates/js/translated/table_filters.js:184 msgid "Include stock in sublocations" msgstr "Bestand in Unter-Lagerorten einschließen" -#: templates/js/translated/table_filters.js:184 +#: templates/js/translated/table_filters.js:189 msgid "Show stock items which are depleted" msgstr "Zeige aufgebrauchte Lagerartikel" -#: templates/js/translated/table_filters.js:189 +#: templates/js/translated/table_filters.js:194 msgid "Show items which are in stock" msgstr "Zeige Objekte welche im Lager sind" -#: templates/js/translated/table_filters.js:193 +#: templates/js/translated/table_filters.js:198 msgid "In Production" msgstr "In Arbeit" -#: templates/js/translated/table_filters.js:194 +#: templates/js/translated/table_filters.js:199 msgid "Show items which are in production" msgstr "Elemente, die in Produktion sind, anzeigen" -#: templates/js/translated/table_filters.js:198 +#: templates/js/translated/table_filters.js:203 msgid "Include Variants" msgstr "Varianten einschließen" -#: templates/js/translated/table_filters.js:199 +#: templates/js/translated/table_filters.js:204 msgid "Include stock items for variant parts" msgstr "Lagerartikel für Teil-Varianten einschließen" -#: templates/js/translated/table_filters.js:203 +#: templates/js/translated/table_filters.js:208 msgid "Installed" msgstr "Installiert" -#: templates/js/translated/table_filters.js:204 +#: templates/js/translated/table_filters.js:209 msgid "Show stock items which are installed in another item" msgstr "Lagerartikel, die in anderen Elementen verbaut sind, anzeigen" -#: templates/js/translated/table_filters.js:209 +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "zeige zu Kunden zugeordnete Einträge" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "Status" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "Hat Einkaufspreis" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "Bestand mit Einkaufspreis anzeigen" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "Zeige abgelaufene Lagerartikel" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "Bestand, der bald ablaufen, anzeigen" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "Bauauftrags-Status" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "Mir zugewiesen" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "Bestellstatus" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "ausstehend" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "Teile in Unterkategorien einschließen" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "Hat IPN" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "Teil hat Interne Teilenummer" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "Aktive Teile anzeigen" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "verfügbarer Bestand" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "Käuflich" @@ -8509,27 +8936,23 @@ msgstr "Spalten" msgid "All" msgstr "Alle" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "Kaufen" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "Verkaufen" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "Admin" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "Ausloggen" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "Einloggen" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "Über InvenTree" @@ -8641,15 +9064,15 @@ msgstr "Bestand verschieben" msgid "Order selected items" msgstr "Ausgewählte Positionen bestellen" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "Status ändern" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "Status ändern" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "Ausgewählte Positionen löschen" @@ -8685,35 +9108,35 @@ msgstr "Berechtigungen" msgid "Important dates" msgstr "wichtige Daten" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "Berechtigung geändert" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "Gruppe" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "Ansicht" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "Berechtigung Einträge anzuzeigen" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "Berechtigung Einträge zu erstellen" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "Ändern" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "Berechtigungen Einträge zu ändern" -#: users/models.py:204 +#: users/models.py:206 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 3b6d4f01a4..8882c2081b 100644 --- a/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/InvenTree/locale/el/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:46\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "" @@ -194,10 +195,15 @@ msgstr "" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "" @@ -206,22 +212,23 @@ msgstr "" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "" @@ -241,83 +248,83 @@ msgstr "" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 ed69daafd0..4f7aa77d3e 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Spanish, Mexico\n" "Language: es_MX\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Ingrese fecha" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Confirmar" @@ -85,8 +86,8 @@ msgstr "Debe escribir el mismo correo electrónico cada vez." msgid "Duplicate serial: {n}" msgstr "Duplicar serie: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Cantidad proporcionada no válida" @@ -122,7 +123,7 @@ msgstr "Falta archivo" msgid "Missing external link" msgstr "Falta enlace externo" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Adjunto" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Seleccionar archivo a adjuntar" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "Enlace" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "Enlace a URL externa" @@ -152,10 +153,10 @@ msgstr "Comentario" msgid "File comment" msgstr "Comentario de archivo" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Usuario" @@ -194,10 +195,15 @@ 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:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Nombre" @@ -206,22 +212,23 @@ msgstr "Nombre" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Descripción" @@ -241,83 +248,83 @@ msgstr "Debe ser un número válido" msgid "Filename" msgstr "Nombre de archivo" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Alemán" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Griego" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Inglés" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Español" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "Español (México)" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "Separar del artículo principal" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "Debe proporcionar adjudicación de artículos" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: 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:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: 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:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: 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:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: 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:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: 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:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: 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:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: 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:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "Artículos de Stock Asignados" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "Artículos de Stock" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "Introducir cantidad de artículos de stock" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "Empresa de la que se están pidiendo los artículos" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "Empresa a la que se venden los artículos" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "Número de artículos recibidos" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "Seleccione la ubicación de destino para los artículos recibidos" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "Debe proporcionar elementos de línea" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "Recibir artículos" msgid "Receive Items" msgstr "Recibir Artículos" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "Artículos" @@ -3489,7 +3648,7 @@ msgstr "Comprar Artículos de Orden" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "Artículos Recibidos" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "Artículos de Orden de Venta" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" -msgstr "Algunos artículos de línea en este pedido han sido sobreasignados" - -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "Asignar artículos de stock por número de serie" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "Asignados {n} artículos" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "Artículo de stock principal" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "Heredado de BOM principal" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "Ubicación del stock principal" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "Inventario" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "Mostrar artículos de stock que han caducado" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "Pedir artículos seleccionados" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "Eliminar artículos seleccionados" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "Permiso para ver artículos" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "Permiso para añadir artículos" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "Permisos para editar artículos" -#: users/models.py:204 +#: users/models.py:206 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 ccbb92c1b4..17c4d272c4 100644 --- a/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:46\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Entrer la date" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Confirmer" @@ -85,8 +86,8 @@ msgstr "Vous devez taper le même e-mail à chaque fois." msgid "Duplicate serial: {n}" msgstr "Dupliquer le numéro de série: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Quantité fournie invalide" @@ -116,13 +117,13 @@ msgstr "Le nombre de numéros de série uniques ({s}) doit correspondre à la qu #: InvenTree/models.py:120 msgid "Missing file" -msgstr "" +msgstr "Fichier manquant" #: InvenTree/models.py:121 msgid "Missing external link" -msgstr "" +msgstr "Lien externe manquant" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Pièce jointe" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Sélectionnez un fichier à joindre" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "Lien" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "Lien vers une url externe" @@ -152,10 +153,10 @@ msgstr "Commentaire" msgid "File comment" msgstr "Commentaire du fichier" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Utilisateur" @@ -194,10 +195,15 @@ msgstr "Choix invalide" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Nom" @@ -206,22 +212,23 @@ msgstr "Nom" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Description" @@ -241,83 +248,83 @@ msgstr "Doit être un nombre valide" msgid "Filename" msgstr "Nom du fichier" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Allemand" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Greek" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Anglais" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Spanish" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "Espagnol (Mexique)" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Français" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "Hebrew" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "Italian" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Japanese" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Korean" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Dutch" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Norwegian" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Polonais" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "Portugais" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Russian" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "Swedish" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Thai" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Turc" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "Vietnamese" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Chinese" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "Échec des contrôles de santé du système" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "En attente" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "Placé" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "Terminé" @@ -361,8 +370,8 @@ msgstr "Perdu" msgid "Returned" msgstr "Retourné" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "Expédié" @@ -442,7 +451,7 @@ msgstr "Séparer de l'élément parent" msgid "Split child item" msgstr "Fractionner l'élément enfant" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "Envoyé au client" @@ -492,15 +501,15 @@ msgstr "Caractère invalide dans le nom ({x})" #: InvenTree/validators.py:133 InvenTree/validators.py:149 msgid "Overage value must not be negative" -msgstr "" +msgstr "La valeur de surplus ne doit pas être négative" #: InvenTree/validators.py:151 msgid "Overage must not exceed 100%" -msgstr "" +msgstr "Le surplus ne doit pas dépasser 100%" #: InvenTree/validators.py:158 msgid "Overage must be an integer value or a percentage" -msgstr "" +msgstr "La valeur de surplus doit être un nombre entier ou un pourcentage" #: InvenTree/views.py:538 msgid "Delete Item" @@ -522,55 +531,55 @@ msgstr "Définir le mot de passe" msgid "Password fields must match" msgstr "Les mots de passe doivent correspondre" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "Informations système" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "Le paramètre barcode_data doit être fourni" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "Aucune correspondance trouvée pour les données du code-barres" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "Correspondance trouvée pour les données du code-barres" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "Vous devez fournir le paramètre stockitem" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "Aucun article d'inventaire correspondant trouvé" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" -msgstr "Le code-barres correspond déjà à une Pièce" - -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" +msgstr "" + +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,36 +591,39 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "Quantité" #: build/forms.py:37 msgid "Enter quantity for build output" -msgstr "" +msgstr "Entrer la quantité désiré pour la fabrication" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "Numéros de série" #: build/forms.py:43 msgid "Enter serial numbers for build outputs" -msgstr "" +msgstr "Entrer les numéros de séries pour la fabrication" #: build/forms.py:49 msgid "Confirm creation of build output" @@ -619,11 +631,11 @@ msgstr "Confirmer la création de la sortie de l'assemblage" #: build/forms.py:70 msgid "Confirm deletion of build output" -msgstr "" +msgstr "Confirmer la supression de la fabrication" #: build/forms.py:94 msgid "Mark build as complete" -msgstr "" +msgstr "Indiquer la fabrication comme terminé" #: build/forms.py:107 msgid "Confirm cancel" @@ -631,26 +643,26 @@ msgstr "Confirmer l'annulation" #: build/forms.py:107 build/views.py:65 msgid "Confirm build cancellation" -msgstr "" +msgstr "Confirmer l'annulation de la fabrication" #: build/models.py:133 msgid "Invalid choice for parent build" -msgstr "" +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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "Ordre de Fabrication" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "Ordres de Fabrication" @@ -658,32 +670,32 @@ msgstr "Ordres de Fabrication" msgid "Build Order Reference" msgstr "Référence de l' Ordre de Fabrication" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "Référence" #: build/models.py:210 msgid "Brief description of the build" -msgstr "" +msgstr "Brève description de la fabrication" #: build/models.py:219 build/templates/build/build_base.html:164 #: build/templates/build/detail.html:88 msgid "Parent Build" -msgstr "" +msgstr "Fabrication parente" #: build/models.py:220 msgid "BuildOrder to which this build is allocated" -msgstr "" +msgstr "BuildOrder associé a cette fabrication" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "Pièce" @@ -715,13 +729,14 @@ msgstr "Sélectionnez la pièce à construire" #: build/models.py:238 msgid "Sales Order Reference" -msgstr "" +msgstr "Bon de commande de référence" #: build/models.py:242 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "Emplacement d'origine" @@ -739,7 +754,7 @@ msgstr "Sélectionnez l'emplacement où les éléments complétés seront stock #: build/models.py:264 msgid "Build Quantity" -msgstr "" +msgstr "Quantité a fabriquer" #: build/models.py:267 msgid "Number of stock items to build" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "Date de création" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "Lien Externe" @@ -823,18 +838,19 @@ msgstr "Lien Externe" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "Notes" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "Assemblage" @@ -889,14 +905,17 @@ msgstr "Assemblage" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "Article en stock" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "Emplacement" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "État" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "L'article doit être en stock" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "La quantité doit être supérieure à zéro" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantité disponible ({q}) dépassée" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "Date Cible" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "En retard" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "Terminé" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "Commandes" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "Destination" @@ -1200,22 +1220,22 @@ msgstr "Destination" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "Créé le" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "Commander les pièces requises" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "Commander des pièces" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "La quantité maximale de sortie est " -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "{name.title()} Fichier" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "Télécharger depuis l'URL" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "Composant" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "Les pièces sont achetables par défaut" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "Afficher les dernières pièces" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "Afficher les dernières modifications du stock" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "URL" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "Cette entreprise fabrique-t-elle des pièces?" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "Devise" @@ -2293,12 +2347,12 @@ msgstr "Devise" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "Sélectionner un fabricant" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "Valeur" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "Fournisseur" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "Créer une commande d'achat" @@ -2493,11 +2547,12 @@ msgstr "Ajouter une nouvelle image" msgid "Download image from URL" msgstr "Télécharger l'image depuis l'URL" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "Commandes d'achat" @@ -2602,7 +2657,7 @@ msgstr "Nouvelle commande achat" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "Ventes" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "Nouvelle commande de vente" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "Stock affecté" @@ -2644,7 +2699,7 @@ msgstr "Liste des Fournisseurs" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "Fabricants" @@ -2673,7 +2728,7 @@ msgstr "Pièces Internes" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "Fournisseurs" @@ -2687,7 +2742,7 @@ msgstr "Supprimer les pièces du fournisseur" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "Supprimer" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "Stock" @@ -2844,7 +2899,7 @@ msgstr "Tarif" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "Éléments en stock" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "Nouveau Fabricant" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "Clients" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "Passer la commande" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "Marquer la commande comme complète" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "Annuler la commande" -#: order/forms.py:70 -msgid "Ship order" -msgstr "Expédier la commande" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "Description de la commande" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "Lien vers une page externe" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "Créé par" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "expédié par" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "Nombre d'élement" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "Commande" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "Commande d’achat" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "Pièce fournisseur" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "Reçu" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "Nombre d'éléments reçus" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "Prix d'achat" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "Prix de vente" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "Ligne" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "Article" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "Devise du prix d'achat" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "Le code-barres est déjà utilisé" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "Finaliser la commande" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "Statut de la commande" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "Supprimer la ligne" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "Articles de la commande d'achat" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "Annuler la commande" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "La commande ne peut pas être annulée" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "Annuler la vente" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "Mettre à jour les prix" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "Prix introuvable" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "Catégorie" @@ -3906,7 +4024,7 @@ msgstr "Catégorie de la pièce" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "IPN" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "Actif" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "Nom de test" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "Requis" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "Données" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "Propriétaire" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "Sélectionner un propriétaire" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "Disponible" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "Annuler" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "Détails" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "A un IPN" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "Ventes" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 634eb7da35..9938394fec 100644 --- a/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/InvenTree/locale/he/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "" @@ -194,10 +195,15 @@ msgstr "" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "" @@ -206,22 +212,23 @@ msgstr "" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "" @@ -241,83 +248,83 @@ msgstr "" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 cfcf2e1d88..6ee9158635 100644 --- a/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/InvenTree/locale/id/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Masukkan tanggal" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Konfirmasi" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "" @@ -194,10 +195,15 @@ msgstr "" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "" @@ -206,22 +212,23 @@ msgstr "" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "" @@ -241,83 +248,83 @@ msgstr "" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 b478c9da25..685dd24ab4 100644 --- a/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/InvenTree/locale/it/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Inserisci la data" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Conferma" @@ -85,8 +86,8 @@ msgstr "È necessario digitare la stessa e-mail ogni volta." msgid "Duplicate serial: {n}" msgstr "Seriale Duplicato: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Quantità inserita non valida" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Allegato" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Seleziona file da allegare" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "Link" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "Link a URL esterno" @@ -152,10 +153,10 @@ msgstr "Commento" msgid "File comment" msgstr "Commento del file" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Utente" @@ -194,10 +195,15 @@ msgstr "Scelta non valida" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Nome" @@ -206,22 +212,23 @@ msgstr "Nome" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Descrizione" @@ -241,83 +248,83 @@ msgstr "Deve essere un numero valido" msgid "Filename" msgstr "Nome del file" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Tedesco" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Greco" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Inglese" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Spagnolo" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "Spagnolo (Messicano)" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Francese" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "Ebraico" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "Italiano" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Giapponese" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Coreano" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Olandese" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Norvegese" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Polacco" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "Portoghese" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Russo" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "Svedese" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Thailandese" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Turco" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "Vietnamita" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Cinese" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "Controlli di sistema InvenTree falliti" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "In attesa" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "Inviato" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "Completo" @@ -361,8 +370,8 @@ msgstr "Perso" msgid "Returned" msgstr "Reso" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "Spedito" @@ -442,7 +451,7 @@ msgstr "Diviso dall'elemento genitore" msgid "Split child item" msgstr "Dividi elemento figlio" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "Inviato al cliente" @@ -522,55 +531,55 @@ msgstr "Imposta Password" msgid "Password fields must match" msgstr "Le password devono coincidere" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "Informazioni sistema" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "È necessario fornire il parametro barcode_data" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "Nessuna corrispondenza trovata per i dati del codice a barre" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "Corrispondenza trovata per i dati del codice a barre" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "È necessario fornire il parametro stockitem" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "Nessun elemento corrispondente trovato" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" -msgstr "Il codice a barre corrisponde già all'oggetto StockItem" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" +msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" -msgstr "Il codice a barre corrisponde già all'oggetto StockItem" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" +msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" -msgstr "Il codice a barre corrisponde già all'articolo" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" +msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" -msgstr "Il codice a barre corrisponde già all'articolo in giacenza" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" +msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" -msgstr "Codice a barre associato all'articolo in giacenza" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" +msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "Codice a barre associato all'articolo in giacenza" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "Quantità" @@ -603,9 +615,9 @@ msgstr "Quantità" msgid "Enter quantity for build output" msgstr "Inserisci la quantità per l'output di compilazione" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "Codice Seriale" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "Riferimento" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "Articolo" @@ -721,7 +735,8 @@ 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:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "Posizione Di Origine" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "Data di creazione" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "Data completamento obiettivo" @@ -782,8 +797,8 @@ msgstr "Data completamento obiettivo" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "Data di completamento" @@ -791,7 +806,7 @@ msgstr "Data di completamento" msgid "completed by" msgstr "Completato da" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "Rilasciato da" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "Responsabile" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "Collegamento esterno" @@ -823,18 +838,19 @@ msgstr "Collegamento esterno" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "Note" @@ -867,7 +883,7 @@ msgstr "La quantità assegnata ({q}) non deve essere maggiore della quantità di msgid "Stock item is over-allocated" msgstr "L'articolo in giacenza è sovrallocato" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "La quantità di assegnazione deve essere maggiore di zero" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "Articolo in giacenza selezionato non trovato nel BOM" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "Articoli in magazzino" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "Posizione" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" 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:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "Stato" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "L'articolo deve essere disponibile" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "La quantità deve essere maggiore di zero" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantità disponibile ({q}) superata" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "Deve essere indicata l'allocazione dell'articolo" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "Data scadenza" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "In ritardo" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "Completato" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "Ordini di Vendita" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "Lo stock può essere prelevato da qualsiasi posizione disponibile." -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "Destinazione" @@ -1200,22 +1220,22 @@ msgstr "Destinazione" msgid "Destination location not specified" msgstr "Posizione di destinazione non specificata" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "Lotto" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "Creato" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "Ordina articoli richiesti" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "Ordine Articoli" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "Genera Note" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "Numeri di serie già esistenti" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "{name.title()} File" msgid "Select {name} file to upload" msgstr "Seleziona il file {name} da caricare" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 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" @@ -1557,7 +1577,7 @@ msgstr "Scarica dall'URL" 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:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "Supporto Codice A Barre" @@ -1623,7 +1643,7 @@ msgstr "Copia i modelli dei parametri categoria quando si crea un articolo" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "Template" @@ -1633,7 +1653,7 @@ msgstr "Gli articoli sono modelli per impostazione predefinita" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "Assemblaggio" @@ -1642,7 +1662,7 @@ 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:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "Componente" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "Vendibile" @@ -1670,7 +1690,7 @@ msgstr "Gli articoli sono acquistabili per impostazione predefinita" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "Tracciabile" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "Mostra le categorie sottoscritte" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "Mostra le categorie dei componenti sottoscritti nella homepage" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "Mostra ultimi articoli" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "Visualizzazione dell'etichetta in linea" -#: common/models.py:1112 +#: 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:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "Visualizzazione dell'etichetta in linea" -#: common/models.py:1119 +#: 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:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "Risultati Dell'Anteprima Di Ricerca" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "Prezzo" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "Carica file" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "Passaggio Precedente" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "URL" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "Descrizione dell'azienda" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "Sito Web" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "Valuta" @@ -2293,12 +2347,12 @@ msgstr "Valuta" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "Articolo di base" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "Seleziona articolo" @@ -2319,7 +2373,7 @@ msgstr "Seleziona Produttore" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "Codice articolo produttore (MPN)" @@ -2349,8 +2403,8 @@ msgstr "Nome parametro" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "Valore" @@ -2360,7 +2414,7 @@ msgstr "Valore del parametro" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "Unità" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "Fornitore" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "Seleziona fornitore" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "SKU" @@ -2425,8 +2479,8 @@ 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:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "Confezionamento" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "Azienda" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "Crea ordine d'acquisto" @@ -2493,11 +2547,12 @@ msgstr "Carica nuova immagine" msgid "Download image from URL" msgstr "Scarica immagine dall'URL" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "Cliente" @@ -2580,7 +2635,7 @@ msgstr "Giacenza Fornitore" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "Ordine di acquisto" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "Elenco dei fornitori" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "Produttori" @@ -2673,7 +2728,7 @@ msgstr "Articolo interno" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "Fornitori" @@ -2687,7 +2742,7 @@ msgstr "Elimina articolo fornitore" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "Elimina" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "Articolo Fornitore" @@ -2767,7 +2822,7 @@ msgstr "Crea nuova allocazione magazzino" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "Nuovo Elemento in giacenza" @@ -2817,11 +2872,11 @@ msgstr "Cancella riduzione di prezzo" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "Magazzino" @@ -2844,7 +2899,7 @@ msgstr "Prezzi" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "Articoli in magazzino" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "Nuovo Produttore" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "Clienti" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "Invia l'ordine" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "Contrassegna ordine come completato" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "Annulla l'ordine" -#: order/forms.py:70 -msgid "Ship order" -msgstr "Spedizione ordine" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "Inserisci i numeri di serie dell'articolo in giacenza" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "Inserisci la quantità di articoli disponibili" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "Descrizione ordine" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "Creato Da" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "Utente o gruppo responsabile di questo ordine" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "Note ordine" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "Riferimento ordine" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "Stato ordine d'acquisto" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "Azienda da cui sono stati ordinati gli articoli" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "Riferimento fornitore" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "Codice di riferimento ordine fornitore" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "ricevuto da" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "Data di emissione" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "Data di emissione ordine" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "Data di consegna programmata" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Data prevista per la consegna dell'ordine. L'ordine scadrà dopo questa data." -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "Data ordine completato" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "Articolo Fornitore" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "La quantità di ripartizione non puo' superare la disponibilità della giacenza" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "Inserisci la quantità assegnata alla giacenza" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "Seleziona la posizione di destinazione per gli elementi ricevuti" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "La destinazione deve essere specificata" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "Ricevere articoli" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "Stato dell'ordine" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "Emesso" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "Modifica ordine d'acquisto" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "Elimina riga" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." -msgstr "Assicurarsi che l'assegnazione degli ordini sia corretta prima di spedire l'ordine." - -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "Specifica la posizione per lo stock iniziale" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "Categorie Articolo" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "Articoli" @@ -3895,7 +4013,7 @@ msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "Categoria" @@ -3906,7 +4024,7 @@ msgstr "Categoria articolo" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "IPN - Numero di riferimento interno" @@ -3975,10 +4093,11 @@ 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:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "Attivo" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "Consenti Le Varianti" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "In magazzino" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "Data" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "Seriale" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "La quantità è richiesta" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "Data di Scadenza" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "Posizione di destinazione per gli elementi disinstallati" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "Conferma la disinstallazione" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "Seleziona Owner" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "Articolo base" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Ubicazione magazzino" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "Installato In" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "Quantità disponibile" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "Elimina al esaurimento" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "Posizione magazzino di destinazione" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "Trasferisci giacenza" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "Ultimo aggiornamento" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "Nessuna posizione impostata" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "Modifica Posizione Giacenza" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "QR Code della posizione magazzino" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "Specificare una posizione valida" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "Crea una nuova Posizione di Giacenza" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "Elimina Posizione di Giacenza" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "Impostazioni Server" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "Impostazioni di accesso" @@ -6161,6 +6367,24 @@ msgstr "Impostazioni di accesso" msgid "Signup" msgstr "Registrati" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "Impostazioni articolo" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "Admin" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "Nessun parametro di categoria trovato" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "Impostazioni Utente" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "Impostazioni di ricerca" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "Informazioni Versione InvenTree" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Chiudi" @@ -6513,14 +6853,6 @@ msgstr "Aggiornato" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "Documentazione InvenTree" @@ -6719,8 +7051,9 @@ msgstr "Quantità richiesta" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "Disponibile" @@ -6766,11 +7099,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:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6782,35 +7115,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6879,7 +7212,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6887,7 +7220,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6907,7 +7240,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6977,7 +7310,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7001,11 +7334,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7026,7 +7354,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7034,7 +7362,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7042,165 +7370,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "Posizione non specificata" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "Modifica allocazione magazzino" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "Elimina posizione giacenza" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "Modifica Posizione" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "Rimuovi Posizione" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "Specificare il quantitativo assegnato allo stock" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 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:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "Conferma l'assegnazione della giacenza" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "Nessuna posizione di magazzino corrispondente" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7220,7 +7548,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "Aggiungi fornitore" @@ -7355,20 +7683,20 @@ msgstr "Mostra operazione non consentita" msgid "Enter a valid number" msgstr "Inserisci un numero valido" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "Nessun risultato trovato" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "Ricerca" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "Cancella input" @@ -7381,7 +7709,7 @@ msgid "NO" msgstr "NO" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7430,62 +7758,62 @@ msgstr "Seleziona l'etichetta" msgid "Select Label Template" msgstr "Seleziona Modello Etichetta" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "Annulla" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "Invia" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "Titolo modulo" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "In attesa del server..." -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "Informazioni sull'errore" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "Accetta" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "Risposta dal server non valida" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7513,176 +7841,245 @@ msgstr "Codice Articolo" msgid "Order ID" msgstr "ID Ordine" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "Id Categoria" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "ID articolo produttore" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "Aggiungi cliente" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "Formato" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "Quantità da ricevere" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "Stato giacenza" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "Codice ordine" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "Ordinato" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "Ricevuto" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "Totale" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "Prezzo Unitario" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "Prezzo Totale" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "Cliente non valido" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "Nessun ordine di vendita trovato" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "Modifica posizione giacenza" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "Conferma Operazione Eliminazione" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "Elimina posizione giacenza" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "Spedito al cliente" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "Nessun posizione specificata" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "Soddisfatto" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "Prezzo d'acquisto" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "Calcola il prezzo" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7827,12 +8224,12 @@ msgid "No category" msgstr "Nessuna categoria" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "In esaurimento" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "Visualizza come elenco" @@ -7840,7 +8237,7 @@ msgstr "Visualizza come elenco" msgid "Display as grid" msgstr "Visualizza come griglia" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "Visualizza come struttura ad albero" @@ -7848,7 +8245,7 @@ msgstr "Visualizza come struttura ad albero" msgid "Subscribed category" msgstr "Categoria sottoscritta" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "Percorso" @@ -7856,11 +8253,11 @@ msgstr "Percorso" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7899,6 +8296,10 @@ msgstr "Prezzo Singolo" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "elementi selezionati" @@ -7965,300 +8366,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "Posizione giacenza principale" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "Nuova posizione giacenza" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "Inserisci quantità iniziale per questo articolo in giacenza" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Inserire i numeri di serie per la nuova giacenza (o lasciare vuoto)" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "Crea nuova allocazione magazzino" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "Creato più elementi stock" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "Esporta giacenza" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "Includi sotto allocazioni" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "Includi elementi in giacenza nelle sottoallocazioni" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "Trasferisci giacenza" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "Sposta" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "Conta giacenza" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "Conta" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "Rimuovi giacenza" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "Prendi" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "Aggiungi giacenza" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "Aggiungi" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "Elimina Stock" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "Specificare la quantità di magazzino" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "Devi selezionare almeno un articolo disponibile" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "PASS" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "FAIL" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "NESSUN RISULTATO" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "Aggiungi risultato test" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "Nessun risultato di prova trovato" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "In produzione" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "Installato nell'elemento stock" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "Spedito al cliente" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "Assegnato all'ordine di vendita" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "Nessuna giacenza impostata" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "L'articolo di magazzino è in produzione" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "Articolo stock assegnato al cliente" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "L'articolo stock è scaduto" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "Articolo in giacenza prossimo alla scadenza" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" -msgstr "L'articolo stock è stato allocato" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" +msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "L'elemento stock è stato installato in un altro articolo" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "L'articolo stock è stato rifiutato" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "Esaurito" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "Inventario" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "elementi" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "posizione" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "Posizione non definita" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "Data non valida" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "La posizione non esiste più" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "Aggiunto" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "Rimosso" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8279,7 +8696,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "Includi sottoallocazioni/posizioni" @@ -8289,54 +8706,54 @@ msgstr "Includi posizioni" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "Includi sottocategorie" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "Sottoscritto" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "Codice Lotto" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "Elementi attivi" @@ -8357,101 +8774,111 @@ msgid "Item has been allocated" msgstr "L'elemento è stato posizionato" #: templates/js/translated/table_filters.js:179 +msgid "Stock is available for use" +msgstr "" + +#: templates/js/translated/table_filters.js:184 msgid "Include stock in sublocations" msgstr "Includi elementi in giacenza nelle sottoallocazioni" -#: templates/js/translated/table_filters.js:184 +#: templates/js/translated/table_filters.js:189 msgid "Show stock items which are depleted" msgstr "" -#: templates/js/translated/table_filters.js:189 +#: templates/js/translated/table_filters.js:194 msgid "Show items which are in stock" msgstr "Mostra gli elementi che sono in giacenza" -#: templates/js/translated/table_filters.js:193 +#: templates/js/translated/table_filters.js:198 msgid "In Production" msgstr "In Produzione" -#: templates/js/translated/table_filters.js:194 +#: templates/js/translated/table_filters.js:199 msgid "Show items which are in production" msgstr "Mostra gli elementi in produzione" -#: templates/js/translated/table_filters.js:198 +#: templates/js/translated/table_filters.js:203 msgid "Include Variants" msgstr "Includi Varianti" -#: templates/js/translated/table_filters.js:199 +#: templates/js/translated/table_filters.js:204 msgid "Include stock items for variant parts" msgstr "Includi gli articoli stock per le varianti degli articoli" -#: templates/js/translated/table_filters.js:203 +#: templates/js/translated/table_filters.js:208 msgid "Installed" msgstr "Installato" -#: templates/js/translated/table_filters.js:204 +#: templates/js/translated/table_filters.js:209 msgid "Show stock items which are installed in another item" msgstr "Mostra gli elementi stock che sono installati in un altro elemento" -#: templates/js/translated/table_filters.js:209 +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "Mostra elementi che sono stati assegnati a un cliente" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "Stato magazzino" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "Ha il prezzo d'acquisto" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "Mostra gli articoli di magazzino che hanno un prezzo di acquisto impostato" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "Mostra gli elementi in giacenza scaduti" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "Mostra giacenza prossima alla scadenza" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "Stato Build" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "Stato dell'ordine" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "In Sospeso" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "Includi articoli nelle sottocategorie" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "Ha IPN" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "L'articolo possiede un part number interno" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "Visualizza articoli attivi" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "Disponibilità" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "Acquistabile" @@ -8508,27 +8935,23 @@ msgstr "Colonne" msgid "All" msgstr "Tutti" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "Acquista" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "Vendi" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "Admin" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "Esci" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "Accedi" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "Informazioni Su InvenTree" @@ -8640,15 +9063,15 @@ msgstr "Sposta giacenza" msgid "Order selected items" msgstr "Ordina articolo selezionato" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "Modifica stato" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "Modifica stato stock" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "Elimina articoli selezionati" @@ -8684,35 +9107,35 @@ msgstr "Permessi" msgid "Important dates" msgstr "Date Importanti" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "Impostazione autorizzazioni" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "Gruppo" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "Visualizza" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "Autorizzazione a visualizzare gli articoli" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "Autorizzazione ad aggiungere elementi" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "Modificare" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "Permessi per modificare gli elementi" -#: users/models.py:204 +#: users/models.py:206 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 dbc37a257c..84bec02c3a 100644 --- a/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "日付を入力する" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "確認" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "数量コードが無効です" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "添付ファイル" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "添付ファイルを選択" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "コメント:" msgid "File comment" msgstr "ファイルコメント" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "ユーザー" @@ -194,10 +195,15 @@ msgstr "無効な選択です" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "お名前" @@ -206,22 +212,23 @@ msgstr "お名前" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "説明" @@ -241,83 +248,83 @@ msgstr "有効な数字でなければなりません" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "ドイツ語" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "英語" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "フランス語" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "ポーランド語" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "トルコ語" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "InvenTree システムのヘルスチェックに失敗しました" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "処理待ち" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "設置済" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "完了" @@ -361,8 +370,8 @@ msgstr "紛失" msgid "Returned" msgstr "返品済" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "発送済み" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "パーツ" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "パーツを割り当てるためにビルドする" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "注文必須パーツ" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "パーツの注文" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "テンプレート" @@ -1633,7 +1653,7 @@ msgstr "パーツはデフォルトのテンプレートです" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "アセンブリ" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "コンポーネント" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "パーツはデフォルトで購入可能です" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "パーツはデフォルトで販売可能です" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "追跡可能" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "内部パーツ" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "パーツ" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "メーカー・パーツの編集" msgid "Delete Manufacturer Part" msgstr "メーカー・パーツを削除" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 226941ff9f..033d2a192a 100644 --- a/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "" @@ -194,10 +195,15 @@ msgstr "" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "" @@ -206,22 +212,23 @@ msgstr "" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "" @@ -241,83 +248,83 @@ msgstr "" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 7208eb54a1..713d52d267 100644 --- a/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Voer datum in" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Bevestigen" @@ -85,8 +86,8 @@ msgstr "U moet elke keer hetzelfde e-mailadres invoeren." msgid "Duplicate serial: {n}" msgstr "Dubbel serienummer: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Ongeldige hoeveeldheid ingevoerd" @@ -122,7 +123,7 @@ msgstr "Ontbrekend bestand" msgid "Missing external link" msgstr "Externe link ontbreekt" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Bijlage" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Bestand als bijlage selecteren" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "Link" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "Link naar externe URL" @@ -152,10 +153,10 @@ msgstr "Opmerking" msgid "File comment" msgstr "Bijlage opmerking" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Gebruiker" @@ -194,10 +195,15 @@ msgstr "Ongeldige keuze" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Naam" @@ -206,22 +212,23 @@ msgstr "Naam" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Omschrijving" @@ -241,83 +248,83 @@ msgstr "Moet een geldig nummer zijn" msgid "Filename" msgstr "Bestandsnaam" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Duits" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Grieks" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Engels" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Spaans" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "Spaans (Mexicaans)" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Frans" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "Hebreeuws" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "Italiaans" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Japans" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Koreaans" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Nederlands" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Noors" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Pools" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "Portugees" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Russisch" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "Zweeds" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Thais" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Turks" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "Vietnamees" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Chinees" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "Inventree gezondsheidscheck faalt" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "Bezig" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "Geplaatst" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "Voltooid" @@ -361,8 +370,8 @@ msgstr "Kwijt" msgid "Returned" msgstr "Retour" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "Verzonden" @@ -442,7 +451,7 @@ msgstr "Splits van bovenliggend item" msgid "Split child item" msgstr "Splits onderliggende item" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "Naar klant verzonden" @@ -522,55 +531,55 @@ msgstr "Wachtwoord instellen" msgid "Password fields must match" msgstr "Wachtwoordvelden komen niet overeen" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "Systeeminformatie" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "De paramenter barcode_data moet worden aangeleverd" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "Geen overeenkomst gevonden voor barcode gegevens" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "Overeenkomst gevonden voor barcode gegevens" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "Moet voorraaditem parameter aanleveren" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "Geen overeenkomend voorraaditem gevonden" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" -msgstr "Barcode komt al overeen met StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" +msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" -msgstr "Barcode komt al overeen met StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" +msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" -msgstr "Barcode komt al overeen met Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" +msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" -msgstr "Barcode komt al overeen met StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" +msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" -msgstr "Barcode gekoppeld aan StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" +msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "Barcode gekoppeld aan StockItem" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "Aantal" @@ -603,9 +615,9 @@ msgstr "Aantal" msgid "Enter quantity for build output" msgstr "Voer hoeveelheid in voor build-output" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "Serienummers" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "Bouwopdracht" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "Bouwopdrachten" @@ -658,13 +670,13 @@ msgstr "Bouwopdrachten" msgid "Build Order Reference" msgstr "Bouwopdracht referentie" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "Referentie" @@ -683,7 +695,7 @@ msgstr "BuildOrder waaraan deze build is toegewezen" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ msgstr "BuildOrder waaraan deze build 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "Onderdeel" @@ -721,7 +735,8 @@ msgstr "Verkoop Order Referentie" msgid "SalesOrder to which this build is allocated" msgstr "Verkooporder waaraan deze build is toegewezen" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "Bron Locatie" @@ -761,7 +776,7 @@ msgstr "Bouwstatus" msgid "Build status code" msgstr "Bouwstatuscode" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "Aanmaakdatum" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "Verwachte voltooiingsdatum" @@ -782,8 +797,8 @@ msgstr "Verwachte voltooiingsdatum" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "Voltooiingsdatum" @@ -791,7 +806,7 @@ msgstr "Voltooiingsdatum" msgid "completed by" msgstr "voltooid door" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "Gebruiker die bouwopdracht heeft gegeven" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "Verantwoordelijke" @@ -815,7 +830,7 @@ msgstr "Gebruiker verantwoordelijk voor deze bouwopdracht" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "Externe Link" @@ -823,18 +838,19 @@ msgstr "Externe Link" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "Opmerkingen" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "Product" @@ -889,14 +905,17 @@ msgstr "Product" msgid "Build to allocate parts" msgstr "Bouw om onderdelen toe te wijzen" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "Voorraadartikel" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "Locatie" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "Status" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "Voorraad is niet volledig toegewezen aan deze bouwopdracht" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "Streefdatum" @@ -1096,28 +1116,28 @@ msgstr "Deze bouw was verwacht op %(target)s" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "Achterstallig" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "Verkoop Order" @@ -1191,8 +1211,8 @@ msgstr "Voorraadbron" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "Batch" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "Gecreëerd" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "Niet toegewezen voorraad" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "Bestel onderdelen" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "Bouw notities" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "Instellingssleutel (moet uniek zijn - hoofdletter ongevoelig" @@ -1557,7 +1577,7 @@ msgstr "Download van URL" 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:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "Barcode ondersteuning" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "Samenstelling" @@ -1642,7 +1662,7 @@ 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:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "Fabriceert dit bedrijf onderdelen?" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "Fabrikant selecteren" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "MPN" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderdeel" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "Fabrikanten" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "Nieuwe fabrikant" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "Serienummer" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Voorraadlocatie" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "Voorraad overzetten" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "Geen Locatie ingesteld" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "Bewerk voorraadlocatie" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "QR-code voor voorraadlocatie" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "Specificeer een geldige locatie" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "Maak nieuwe voorraadlocatie" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "Verwijder voorraadlocatie" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "Bevestig de voorraadtoewijzing" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "Fabrikant onderdeel bewerken" msgid "Delete Manufacturer Part" msgstr "Fabrikant onderdeel verwijderen" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "Onderdeelnummer fabrikant" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "Geen voorraadlocatie ingesteld" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "Inkoop" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "Verkoop" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 d440762c4b..4201822661 100644 --- a/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/InvenTree/locale/no/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Oppgi dato" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Bekreft" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "Dupliser serie: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Ugyldig mengde oppgitt" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Vedlegg" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Velg fil å legge ved" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "Kommenter" msgid "File comment" msgstr "Kommentar til fil" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Bruker" @@ -194,10 +195,15 @@ msgstr "Ugyldig valg" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Navn" @@ -206,22 +212,23 @@ msgstr "Navn" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Beskrivelse" @@ -241,83 +248,83 @@ msgstr "Nummer må være gyldig" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Tysk" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Gresk" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Engelsk" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Spansk" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Fransk" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "Hebraisk" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "Italiensk" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Japansk" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Koreansk" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Nederlandsk" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Norsk" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Polsk" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Russisk" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "Svensk" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Thailandsk" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Tyrkisk" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "Vietnamesisk" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Kinesisk" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "Må oppgi gyldig strekkode_data parameter" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "Ingen treff funnet for strekkodedata" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "Treff funnet for strekkodedata" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "Må oppgi lagervareparameter" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "Ingen samsvarende lagervare funnet" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 ce000b6277..22b38b1665 100644 --- a/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Wprowadź dane" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Potwierdź" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "Powtórzony numer seryjny: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Podano nieprawidłową ilość" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Załącznik" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Wybierz plik do załączenia" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "Łącze" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "Link do zewnętrznego adresu URL" @@ -152,10 +153,10 @@ msgstr "Komentarz" msgid "File comment" msgstr "Komentarz pliku" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Użytkownik" @@ -194,10 +195,15 @@ msgstr "Błędny wybór" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Nazwa" @@ -206,22 +212,23 @@ msgstr "Nazwa" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Opis" @@ -241,83 +248,83 @@ msgstr "Numer musi być prawidłowy" msgid "Filename" msgstr "Nazwa pliku" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Niemiecki" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Grecki" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Angielski" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Hiszpański" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "Hiszpański (Meksyk)" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Francuski" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "Hebrajski" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "Włoski" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Japoński" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Koreański" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Holenderski" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Norweski" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Polski" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "Portugalski" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Rosyjski" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "Szwedzki" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Tajski" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Turecki" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "Wietnamski" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Chiński" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "W toku" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "Umieszczony" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "Zakończono" @@ -361,8 +370,8 @@ msgstr "Zagubiono" msgid "Returned" msgstr "Zwrócone" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "Wysłane" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "Podziel element podrzędny" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "Wyślij do klienta" @@ -522,55 +531,55 @@ msgstr "Ustaw hasło" msgid "Password fields must match" msgstr "Hasła muszą być zgodne" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "Informacja systemowa" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "Nie znaleziono pasujących stanów magazynowych" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" -msgstr "Kod kreskowy już pasuje do obiektu StockItem" - -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" -msgstr "Kod kreskowy już pasuje do obiektu StockItem" - -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" -msgstr "Kod kreskowy już pasuje do obiektu StockItem" - -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" +msgstr "" + +#: barcodes/api.py:199 +msgid "Barcode already matches Part" +msgstr "" + +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" +msgstr "" + +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "Ilość" @@ -603,9 +615,9 @@ msgstr "Ilość" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "Numer seryjny" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "Zlecenie Budowy" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "Zlecenia budowy" @@ -658,13 +670,13 @@ msgstr "Zlecenia budowy" msgid "Build Order Reference" msgstr "Odwołanie do zamówienia wykonania" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "Referencja" @@ -683,7 +695,7 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "Część" @@ -721,7 +735,8 @@ 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:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "Lokalizacja źródła" @@ -761,7 +776,7 @@ msgstr "Status budowania" msgid "Build status code" msgstr "Kod statusu budowania" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "Kod partii" @@ -769,12 +784,12 @@ msgstr "Kod partii" msgid "Batch code for this build output" msgstr "Kod partii dla wyjścia budowy" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "Data utworzenia" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "Docelowy termin zakończenia" @@ -782,8 +797,8 @@ msgstr "Docelowy termin zakończenia" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "Data zakończenia" @@ -791,7 +806,7 @@ msgstr "Data zakończenia" msgid "completed by" msgstr "zrealizowane przez" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "Wydany przez" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "Użytkownik, który wydał to zamówienie" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "Odpowiedzialny" @@ -815,7 +830,7 @@ msgstr "Użytkownik odpowiedzialny za to zamówienie budowy" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "Link Zewnętrzny" @@ -823,18 +838,19 @@ msgstr "Link Zewnętrzny" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "Uwagi" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "Alokowana ilość musi być większa niż zero" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "Budowa" @@ -889,14 +905,17 @@ msgstr "Budowa" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "Element magazynowy" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "Lokalizacja" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "Status" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "Ilość musi być większa niż zero" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "Data docelowa" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "Zaległe" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "Zakończone" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "Zamówienie zakupu" @@ -1191,8 +1211,8 @@ msgstr "Źródło magazynu" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "Przeznaczenie" @@ -1200,22 +1220,22 @@ msgstr "Przeznaczenie" msgid "Destination location not specified" msgstr "Nie określono lokalizacji docelowej" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "Partia" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "Utworzony" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "Przydziel zapasy do budowy" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "Cofnij przydział zapasów" @@ -1257,7 +1277,7 @@ msgstr "Zamów wymagane komponenty" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "Zamów części" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "Notatki tworzenia" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "Utwórz zlecenie budowy" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "Numer seryjny już istnieje" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "Pobierz z adresu URL" 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:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "Obsługa kodu kreskowego" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "Szablon" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "Złożenie" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "Komponent" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "Części są domyślnie z możliwością zakupu" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "Możliwość sprzedaży" @@ -1670,7 +1690,7 @@ msgstr "Części są domyślnie z możliwością sprzedaży" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "Możliwość śledzenia" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "Pokaż ilość w formularzach" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "Cena" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "Wyślij plik" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "URL" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "Opis firmy" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "Strona WWW" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "Czy to przedsiębiorstwo produkuje części?" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "Waluta" @@ -2293,12 +2347,12 @@ msgstr "Waluta" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "Część bazowa" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "Wybierz część" @@ -2319,7 +2373,7 @@ msgstr "Wybierz producenta" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "MPN" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "Jednostki" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "Dostawca" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "Wybierz dostawcę" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "SKU" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "Opakowanie" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "Firma" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "Prześlij nowy obraz" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "Klient" @@ -2580,7 +2635,7 @@ msgstr "Zapasy dostawcy" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "Lista dostawców" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "Producenci" @@ -2673,7 +2728,7 @@ msgstr "Część wewnętrzna" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "Dostawcy" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "Usuń" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "Stan" @@ -2844,7 +2899,7 @@ msgstr "Cennik" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "Now producent" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "Klienci" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "Złóż zamówienie" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "Oznacz zamówienie jako zakończone" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "Anuluj zamówienie" -#: order/forms.py:70 -msgid "Ship order" -msgstr "Wyślij zamówienie" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "Wprowadź ilość produktów magazynowych" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "Opis Zamówienia" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "Link do zewnętrznej witryny" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "Utworzony przez" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "Użytkownik lub grupa odpowiedzialna za to zamówienie" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "Notatki do zamówienia" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "Odniesienie zamówienia" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "Status zamówienia zakupu" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "odebrane przez" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "Data wydania" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "Data wystawienia zamówienia" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "Data Dostawy Towaru" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "Wartość musi być liczbą całkowitą" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "Wartość musi być liczbą dodatnią" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "Data wysyłki" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "wysłane przez" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "Ilość elementów" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "Zamówienie" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "Zlecenie zakupu" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "Odebrane" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "Cena zakupu" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "Cena zakupu jednostkowego" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "Gdzie kupujący chce przechowywać ten przedmiot?" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "Cena sprzedaży" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "Jednostkowa cena sprzedaży" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Zarezerwowana ilość nie może przekraczać ilości na stanie" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "Linia" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "Komponent" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "Status zamówienia" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "Wydany" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "Przedmioty" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "Dodaj element zamówienia" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "Otrzymane elementy" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "Notatki zamówień" @@ -3520,25 +3679,30 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" -msgstr "Wyślij zamówienie" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" +msgstr "" #: order/templates/order/sales_order_base.html:102 msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" +msgstr "Akcje" + +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" -msgstr "" - -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "Anuluj zamówienie" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "Potwierdź anulowanie zamówienia" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "Zamówienie nie może zostać anulowane" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "Nie znaleziono ceny" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "Części" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "Kategoria" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "IPN" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "Aktywny" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "Nazwa testu" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "Wymagane" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "Dane" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "Wartość domyślna" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "Numer Seryjny" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "Wynik" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "Data" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "Data ważności" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "Numery seryjne" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "Część podstawowa" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "Ilość w magazynie" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "Ilość musi być liczbą całkowitą" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "Termin minął" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "Ostatnia aktualizacja" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "Lokacje nie są ustawione" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "Utwórz nową lokalizację magazynową" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "Ilość nie może być ujemna" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "Indeks" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "Dostępne" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "Błąd 403: Odmowa dostępu" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 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:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "Akcje" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "Ilość za" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "Przydzielono" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "Potwierdź przydział zapasów" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "Kod zamówienia" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "Odbierz" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "Cena jednostkowa" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "Cena zakupu" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "Oblicz cenę" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "Zaktualizuj cenę jednostkową" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "Cena jednostkowa" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "Dodaj stan" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "Dodaj" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "Szczegóły" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "Dodano" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "Uprawnienia" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "Uprawnienia nadane" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "Uprawnienie do wyświetlania przedmiotów" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "Uprawnienie do dodawania przedmiotów" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "Uprawnienie do edycji przedmiotów" -#: users/models.py:204 +#: users/models.py:206 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 03d5295103..5b636802e5 100644 --- a/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Portuguese\n" "Language: pt_PT\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "" @@ -194,10 +195,15 @@ msgstr "" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "" @@ -206,22 +212,23 @@ msgstr "" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "" @@ -241,83 +248,83 @@ msgstr "" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 3b0f4954b2..1882f12d21 100644 --- a/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Введите дату" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Подтвердить" @@ -85,8 +86,8 @@ msgstr "Вы должны вводить один и тот же адрес эл msgid "Duplicate serial: {n}" msgstr "Дублировать серийный номер: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "недопустимое количество" @@ -122,7 +123,7 @@ msgstr "Файл не найден" msgid "Missing external link" msgstr "Отсутствует внешняя ссылка" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Вложения" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Выберите файл для вложения" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "Ссылка" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "Ссылка на внешний URL" @@ -152,10 +153,10 @@ msgstr "Комментарий" msgid "File comment" msgstr "Комментарий к файлу" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Пользователь" @@ -194,10 +195,15 @@ msgstr "Неверный выбор" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Название" @@ -206,22 +212,23 @@ msgstr "Название" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Описание" @@ -241,83 +248,83 @@ msgstr "Должно быть действительным номером" msgid "Filename" msgstr "Имя файла" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Немецкий" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Греческий" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Английский" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Испанский" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "Испанский (Мексика)" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Французский" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "Иврит" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "Итальянский" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Японский" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Корейский" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Голландский" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Норвежский" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Польский" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "Португальский" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Русский" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "Шведский" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Тайский" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Турецкий" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "Вьетнамский" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Китайский" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "Ошибка проверки состояния системы InvenTree" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "Ожидаемый" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "Размещены" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "Готово" @@ -361,8 +370,8 @@ msgstr "Потерян" msgid "Returned" msgstr "Возвращено" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "Доставлено" @@ -442,7 +451,7 @@ msgstr "Отделить от родительского элемента" msgid "Split child item" msgstr "Разбить дочерний элемент" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "Отправлено клиенту" @@ -522,55 +531,55 @@ msgstr "Установить пароль" msgid "Password fields must match" msgstr "Пароли должны совпадать" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "Информация о системе" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "Должен быть предоставлен параметр штрихкода" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "Не найдено совпадений для данных штрих-кода" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "Найдено совпадение по штрих-коду" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "Необходимо предоставить параметр инвентаря" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "Не найдено совпадающих элементов инвентаря" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" -msgstr "Штрих-код уже соответствует объекту StockItem" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" +msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" -msgstr "Штрих-код уже соответствует объекту StockLocation" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" +msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" -msgstr "Штрих-код уже соответствует объекту Part" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" +msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" -msgstr "Хэш штрих-кода уже соответствует объекту StockItem" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" +msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" -msgstr "Штрих-код, связанный с инвентарем" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" +msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "Штрих-код, связанный с инвентарем" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "Количество" @@ -603,9 +615,9 @@ msgstr "Количество" msgid "Enter quantity for build output" msgstr "Введите количество для вывода сборки" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "Серийные номера" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "Порядок сборки" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "Порядок сборки" @@ -658,13 +670,13 @@ msgstr "Порядок сборки" msgid "Build Order Reference" msgstr "Ссылка на заказ" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "Отсылка" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "Детали" @@ -721,7 +735,8 @@ msgstr "Отсылка на заказ" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "Расположение источника" @@ -761,7 +776,7 @@ msgstr "Статус сборки" msgid "Build status code" msgstr "Код статуса сборки" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "Штрих код" @@ -769,12 +784,12 @@ msgstr "Штрих код" msgid "Batch code for this build output" msgstr "Штрих код для этого вывода сборки" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "Дата создания" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "Целевая дата завершения" @@ -782,8 +797,8 @@ msgstr "Целевая дата завершения" msgid "Target date for build completion. Build will be overdue after this date." msgstr "Целевая дата для сборки. Сборка будет просрочена после этой даты." -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "Дата завершения" @@ -791,7 +806,7 @@ msgstr "Дата завершения" msgid "completed by" msgstr "выполнено" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "Выдал/ла" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "Пользователь, выпустивший этот заказ на сборку" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "Ответственный" @@ -815,7 +830,7 @@ msgstr "Пользователь ответственный за этот зак #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "Внешняя ссылка" @@ -823,18 +838,19 @@ msgstr "Внешняя ссылка" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "Заметки" @@ -867,7 +883,7 @@ msgstr "Выделенное количество ({q}) не должно пре msgid "Stock item is over-allocated" msgstr "Предмет на складе перераспределен" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "Выделенное количество должно быть больше нуля" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "Выбранный предмет со складом не найден в BOM" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "Сборка" @@ -889,14 +905,17 @@ msgstr "Сборка" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "Предметы на складе" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "Расположение" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "Статус" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "Целевая дата" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "Просрочено" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "Партия" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "Создано" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "Заказать детали" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "Заметки сборки" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "Подтвердите выделение запасов" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 0902728d5f..f30c4284d8 100644 --- a/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Ange datum" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Bekräfta" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Ogiltigt antal angivet" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Bilaga" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Välj fil att bifoga" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "Kommentar" msgid "File comment" msgstr "Fil kommentar" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Användare" @@ -194,10 +195,15 @@ msgstr "Ogiltigt val" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Namn" @@ -206,22 +212,23 @@ msgstr "Namn" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Beskrivning" @@ -241,83 +248,83 @@ msgstr "Måste vara ett giltigt nummer" msgid "Filename" msgstr "Filnamn" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Tyska" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Grekiska" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "Engelska" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "Spanska" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Franska" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "Hebreiska" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "Italienska" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Japanska" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Koreanska" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Nederländska" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Norska" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Polska" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Ryska" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "Svenska" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Thailändska" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Turkiska" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "Vietnamesiska" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Kinesiska" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "InvenTree systemhälsokontroll misslyckades" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "Väntar" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "Placerad" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "Slutför" @@ -361,8 +370,8 @@ msgstr "Förlorad" msgid "Returned" msgstr "Återlämnad" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "Skickad" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 826a1b4653..33d8b3334a 100644 --- a/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/InvenTree/locale/th/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "" @@ -194,10 +195,15 @@ msgstr "" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "" @@ -206,22 +212,23 @@ msgstr "" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "" @@ -241,83 +248,83 @@ msgstr "" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "" @@ -658,13 +670,13 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "" @@ -791,7 +806,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 39695002e7..032934132c 100644 --- a/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "Tarih giriniz" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "Onay" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "Tekrarlanan seri {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "Geçersiz veri sağlandı" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "Ek" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "Eklenecek dosyayı seç" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "Bağlantı" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "Harici URL'ye bağlantı" @@ -152,10 +153,10 @@ msgstr "Yorum" msgid "File comment" msgstr "Dosya yorumu" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Kullanıcı" @@ -194,10 +195,15 @@ msgstr "Geçersiz seçim" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "Adı" @@ -206,22 +212,23 @@ msgstr "Adı" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Açıklama" @@ -241,83 +248,83 @@ msgstr "Geçerli bir numara olmalı" msgid "Filename" msgstr "" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "Almanca" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "Yunanca" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "İngilizce" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "İspanyolca" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "Fransızca" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "İbranice" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "İtalyanca" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "Japonca" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "Korece" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "Flemenkçe" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "Norveççe" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "Polonyaca" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "Rusça" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "İsveççe" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "Tay dili" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "Türkçe" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "Çince" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "InvenTree sistem sağlık kontrolü başarısız" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "Bekliyor" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "Sipariş verildi" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "Tamamlandı" @@ -361,8 +370,8 @@ msgstr "Kayıp" msgid "Returned" msgstr "İade" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "Sevk edildi" @@ -442,7 +451,7 @@ msgstr "Üst ögeden ayır" msgid "Split child item" msgstr "Alt ögeyi ayır" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "Müşteriye gönderildi" @@ -522,55 +531,55 @@ msgstr "Şifre Belirle" msgid "Password fields must match" msgstr "Parola alanları eşleşmelidir" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "Sistem Bilgisi" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "Barcode_data parametresini sağlamalıdır" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "Barkod verisi için eşleşme bulunamadı" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "Barkod verisi için eşleşme bulundu" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "Stok kalemi parametresi sağlamalıdır" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "Eşleşen stok kalemi bulunamadı" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" -msgstr "Barkod başka bir stok kalemi nesnesi ile eşleşmektedir" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" +msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" -msgstr "Barkod başka bir stok konumu nesnesi ile eşleşmektedir" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" +msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" -msgstr "Barkod başka bir parça nesnesi ile eşleşmektedir" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" +msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" -msgstr "Barkod karması (hash) zaten stok kalemi nesnesiyle eşleşiyor" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" +msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" -msgstr "Barkod başka bir stok kalemiyle ilişkili" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" +msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "Barkod başka bir stok kalemiyle ilişkili" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "Miktar" @@ -603,9 +615,9 @@ msgstr "Miktar" msgid "Enter quantity for build output" msgstr "Yapım işi çıktısı için miktarını girin" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "Seri Numaraları" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "Yapım İşi Emri" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "Yapım İşi Emirleri" @@ -658,13 +670,13 @@ msgstr "Yapım İşi Emirleri" msgid "Build Order Reference" msgstr "Yapım İşi Emri Referansı" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "Referans" @@ -683,7 +695,7 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "Parça" @@ -721,7 +735,8 @@ 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:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "Kaynak Konum" @@ -761,7 +776,7 @@ msgstr "Yapım İşi Durumu" msgid "Build status code" msgstr "Yapım işi durum kodu" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "Sıra numarası" @@ -769,12 +784,12 @@ msgstr "Sıra numarası" msgid "Batch code for this build output" msgstr "Yapım işi çıktısı için sıra numarası" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "Oluşturulma tarihi" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "Hedef tamamlama tarihi" @@ -782,8 +797,8 @@ msgstr "Hedef tamamlama tarihi" 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:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "Tamamlama tarihi" @@ -791,7 +806,7 @@ msgstr "Tamamlama tarihi" msgid "completed by" msgstr "tamamlayan" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "Veren" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "Bu yapım işi emrini veren kullanıcı" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "Sorumlu" @@ -815,7 +830,7 @@ msgstr "Bu yapım işi emrinden sorumlu kullanıcı" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "Harici Bağlantı" @@ -823,18 +838,19 @@ msgstr "Harici Bağlantı" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "Notlar" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "Stok kalemi fazladan tahsis edilmiş" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "Tahsis edilen miktar sıfırdan büyük olmalıdır" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "Yapım İşi" @@ -889,14 +905,17 @@ msgstr "Yapım İşi" msgid "Build to allocate parts" msgstr "Yapım işi için tahsis edilen parçalar" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "Stok Kalemi" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "Konum" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "Durum" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "Stok, yapım işi emri için tamamen tahsis edilemedi" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "Hedeflenen tarih" @@ -1096,28 +1116,28 @@ msgstr "Bu yapım işinin %(target)s tarihinde süresi doluyor" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "Vadesi geçmiş" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "Tamamlandı" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "Sipariş Emri" @@ -1191,8 +1211,8 @@ msgstr "Stok Kaynağı" msgid "Stock can be taken from any available location." msgstr "Stok herhangi bir konumdan alınabilir." -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "Hedef" @@ -1200,22 +1220,22 @@ msgstr "Hedef" msgid "Destination location not specified" msgstr "Hedef konumu belirtilmedi" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "Toplu" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "Oluşturuldu" @@ -1235,7 +1255,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:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "Stok tahsisini kaldır" @@ -1257,7 +1277,7 @@ msgstr "Gerekli parçaları sipariş edin" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "Parça Siparişi" @@ -1309,8 +1329,8 @@ msgstr "Tamamlanmış Yapım İşi Çıktıları" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "Yapım İşi Notları" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "Yapım İşi Çıktısı Oluştur" msgid "Maximum output quantity is " msgstr "Maksimum çıktı miktarı " -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "Seri numaraları zaten mevcut" @@ -1400,7 +1420,7 @@ msgstr "Yapım İşi Çıktısı Sil" msgid "Confirm unallocation of build stock" msgstr "Yapım işi stoku tahsisinin iptalini onayla" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "Onay kutusunu işaretleyin" @@ -1469,7 +1489,7 @@ 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:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "URL'den indir" 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:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "Barkod Desteği" @@ -1623,7 +1643,7 @@ msgstr "Parça oluştururken kategori parametre şablonlarını kopyala" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "Şablon" @@ -1633,7 +1653,7 @@ msgstr "Parçaları varsayılan olan şablondur" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "Montaj" @@ -1642,7 +1662,7 @@ 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:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "Bileşen" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "Parçalar varsayılan olarak satın alınabilir" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "Satılabilir" @@ -1670,7 +1690,7 @@ msgstr "Parçalar varsayılan olarak satılabilir" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "Takip Edilebilir" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "Formlarda Miktarı Göster" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "Fiyat" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "Dosya Yükle" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "Bu şirket üretim yapıyor mu?" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "Para birimi" @@ -2293,12 +2347,12 @@ msgstr "Para birimi" 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:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "Temel Parça" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "Parça seçin" @@ -2319,7 +2373,7 @@ msgstr "Üretici seçin" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "ÜPN" @@ -2349,8 +2403,8 @@ msgstr "Parametre adı" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "Değer" @@ -2360,7 +2414,7 @@ msgstr "Parametre değeri" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "Tedarikçi" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "Tedarikçi seçin" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "SKU" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "Paketleme" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "Satın Alma Emri Oluştur" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "Müşteri" @@ -2580,7 +2635,7 @@ msgstr "Tedarikçi Stoku" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "Satın Alma Emirleri" @@ -2602,7 +2657,7 @@ msgstr "Yeni Satın Alma Emri" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "Satış Emirleri" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "Yeni Satış Emri" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "Atanan Stok" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "Üreticiler" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "Tedarikçi parçalarını sil" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "Tedarikçi Parçası" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "Stok" @@ -2844,7 +2899,7 @@ msgstr "Fiyatlandırma" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "Stok Kalemleri" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "Yeni Üretici" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "Müşteriler" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "Sipariş ver" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "Siparişi tamamlandı olarak işaretle" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "Siparişi iptal et" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "Stok kalemi seri numaları girin" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "Sipariş açıklaması" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "Harici sayfaya bağlantı" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "Oluşturan" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "Sipariş notları" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "Sipariş referansı" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Tahsis miktarı stok miktarını aşamaz" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "Stok kalemi fazladan tahsis edilmiş" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "Seri numaralı stok kalemi için miktar bir olmalı" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "Stok tahsis miktarını girin" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "Ürünler" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "Sipariş Notları" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." -msgstr "Emri göndermeden önce emir tahsisinin doğru olduğundan emin olun." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" +msgstr "İşlemler" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "Seri numarası ile stok kalemlerini tahsis et" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "Siparişi İptal Et" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "Fiyatları güncelle" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "Seri Numaralarını Tahsis Et" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "{serial} seri numarası için eşleşen öge bulunamadı" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "{serial} stokta yok" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "{serial} zaten bir emirde tahsis edilmiş" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "Parça Kategorileri" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "Parçalar" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "DPN" @@ -3975,10 +4093,11 @@ 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:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "Aktif" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "Test Adı" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "Gerekli" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "Parametre Şablonu" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "Çeşide İzin Ver" msgid "Stock items for variant parts can be used for this BOM item" msgstr "Çeşit parçaların stok kalemleri bu malzeme listesinde kullanılabilir" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "Bu parça %(link)s parçasının bir çeşididir" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "Seri Numara" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "Seri No" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "Bu stok kalemi için son kullanma tarihi" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "Benzersiz seri numaraları giriniz (veya boş bırakınız)" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "Seri numaralandırılmış stok için hedef konum(varsayılan olarak, geçerli konumda kalacaktır)" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "Seri numaraları" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "Benzersiz seri numaraları (miktar ile eşleşmeli)" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "İşlem notu ekle (isteğe bağlı)" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "Kurulacak stok kalemi" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "Sökülen ögeler için hedef konum" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "Kurulu stok kalemlerinin kaldırılmasını onayla" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "Bu seri numarasına sahip stok kalemi zaten var" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "Seri numarası olan ögenin miktarı bir olmalı" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Miktar birden büyük ise seri numarası ayarlanamaz" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "Üst Stok Kalemi" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "Bu stok kalemi için tedarikçi parçası seçin" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Stok Konumu" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "Bu öge için seri numarası" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "Seri numaraları tam sayı listesi olmalı" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "Miktar seri numaları ile eşleşmiyor" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "Seri numaraları zaten mevcut: {exists}" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stok kalemi stokta olmadığı için taşınamaz" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "Stoku seri numarala" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ 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:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ 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:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ 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:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "Konum ayarlanmadı" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "Stok Kalemine Dönüştür" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "Stok konumunu düzenle" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "Sahip gerekli (sahip kontrolü etkinleştirildi)" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "Stok Konumu QR Kodu" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "Geçerli bir konum belirtiniz" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "Stok ayarlamasını onayla" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "Yeni Stok konumu oluştur" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "Stok Konumunu Sil" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "Parça Parametre Şablonu" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "Commit Tarihi" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "Commit Hash Değeri" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "Kategori parametre şablonu bulunamadı" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "Şablonu Düzenle" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "Şablonu Sil" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "Parça parametre şablonu bulunamadı" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "Arama Ayarları" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "InvenTree Sürüm Bilgisi" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Kapat" @@ -6513,14 +6853,6 @@ msgstr "Güncel" msgid "Update Available" msgstr "Güncelleme Mevcut" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "Commit Hash Değeri" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "Commit Tarihi" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "Mevcut" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "Cevap Yok" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 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:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "İşlemler" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "Gerekli Parça" @@ -7041,165 +7369,165 @@ msgstr "Gerekli Parça" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "Stok tahsisini düzenle" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "Stok tahsisini sil" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "Stok tahsisini onayla" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "Etiket Seç" msgid "Select Label Template" msgstr "Etiket Şablonu Seç" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "Silme İşlemini Onayla" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "Seri numaralarını tahsis et" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "Seri Numaralarını Tahsis Et" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "Sorgu ile eşleşen test şablonu bulunamadı" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "Stok konumu ayarlanmadı" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "konumlar" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "Tanımsız konum" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "Detaylar" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "Konum artık yok" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "Çeşit Stokuna İzin Ver" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "Alt konumları dahil et" @@ -8288,54 +8705,54 @@ msgstr "Konumları dahil et" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "Seri Numaralı" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "Seri numarası BvE" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "Seri numarası büyük veya eşit" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "Seri numarası KvE" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "Seri numarası küçük veya eşit" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "Seri numarası" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 +msgid "Stock is available for use" +msgstr "" + +#: templates/js/translated/table_filters.js:184 msgid "Include stock in sublocations" msgstr "Alt konumlardaki stoku dahil et" -#: templates/js/translated/table_filters.js:184 +#: templates/js/translated/table_filters.js:189 msgid "Show stock items which are depleted" msgstr "" -#: templates/js/translated/table_filters.js:189 +#: templates/js/translated/table_filters.js:194 msgid "Show items which are in stock" msgstr "" -#: templates/js/translated/table_filters.js:193 +#: templates/js/translated/table_filters.js:198 msgid "In Production" msgstr "" -#: templates/js/translated/table_filters.js:194 +#: templates/js/translated/table_filters.js:199 msgid "Show items which are in production" msgstr "" -#: templates/js/translated/table_filters.js:198 +#: templates/js/translated/table_filters.js:203 msgid "Include Variants" msgstr "Çeşitleri Dahil Et" -#: templates/js/translated/table_filters.js:199 +#: templates/js/translated/table_filters.js:204 msgid "Include stock items for variant parts" msgstr "Çeşit parçaların stok kalemlerini dahil et" -#: templates/js/translated/table_filters.js:203 +#: templates/js/translated/table_filters.js:208 msgid "Installed" msgstr "" -#: templates/js/translated/table_filters.js:204 +#: templates/js/translated/table_filters.js:209 msgid "Show stock items which are installed in another item" msgstr "" -#: templates/js/translated/table_filters.js:209 +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "Alt kategorilerdeki parçaları dahil et" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "DPN Var" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 8f72d43f63..1f893cff2e 100644 --- a/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:25\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "" @@ -85,8 +86,8 @@ msgstr "" msgid "Duplicate serial: {n}" msgstr "" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "" @@ -122,7 +123,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "" @@ -152,10 +153,10 @@ msgstr "Bình luận" msgid "File comment" msgstr "" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "Người dùng" @@ -194,10 +195,15 @@ msgstr "" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "" @@ -206,22 +212,23 @@ msgstr "" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "Mô tả" @@ -241,83 +248,83 @@ msgstr "" msgid "Filename" msgstr "Tên tập tin" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "" @@ -361,8 +370,8 @@ msgstr "" msgid "Returned" msgstr "" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "" @@ -442,7 +451,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "" @@ -522,55 +531,55 @@ msgstr "" msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "Thông tin hệ thống" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "" @@ -603,9 +615,9 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "Tạo đơn hàng" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "Tạo đơn hàng" @@ -658,13 +670,13 @@ msgstr "Tạo đơn hàng" msgid "Build Order Reference" msgstr "" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "" @@ -683,7 +695,7 @@ msgstr "" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "Nguyên liệu" @@ -721,7 +735,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "" @@ -761,7 +776,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "" @@ -769,12 +784,12 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "" @@ -782,8 +797,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "Ngày hoàn thành" @@ -791,7 +806,7 @@ msgstr "Ngày hoàn thành" msgid "completed by" msgstr "" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "" @@ -815,7 +830,7 @@ msgstr "" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "" @@ -823,18 +838,19 @@ msgstr "" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "" @@ -889,14 +905,17 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "Trạng thái" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "" @@ -1096,28 +1116,28 @@ msgstr "" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "Đã hoàn thành" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "" @@ -1235,7 +1255,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "" @@ -1257,7 +1277,7 @@ msgstr "" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "" msgid "Maximum output quantity is " msgstr "" -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "" @@ -1400,7 +1420,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "" @@ -1670,7 +1690,7 @@ msgstr "" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "Hiển thị nguyên liệu mới nhất" -#: common/models.py:1014 +#: 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:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "" @@ -2293,12 +2347,12 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "" @@ -2319,7 +2373,7 @@ msgstr "" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "" @@ -2349,8 +2403,8 @@ msgstr "" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "" @@ -2360,7 +2414,7 @@ msgstr "" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "Nhà cung cấp" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "" @@ -2493,11 +2547,12 @@ msgstr "" msgid "Download image from URL" msgstr "" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "" @@ -2580,7 +2635,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "" @@ -2602,7 +2657,7 @@ msgstr "" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "" @@ -2673,7 +2728,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "" @@ -2687,7 +2742,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "Kiện hàng" @@ -2844,7 +2899,7 @@ msgstr "" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "" @@ -2960,284 +3015,374 @@ msgstr "" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "Đơn hàng" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "Giá mua" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "" @@ -3828,8 +3946,8 @@ msgstr "" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "Nguyên liệu" @@ -3895,7 +4013,7 @@ msgstr "" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "" @@ -3906,7 +4024,7 @@ msgstr "" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Kho hàng" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "Cài đặt" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -6177,6 +6401,126 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "Quản trị" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "" @@ -6194,86 +6538,82 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "Cài đặt" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "Chỉnh sửa cài đặt toàn cục" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "Chỉnh sửa cài đặt người dùng" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "Cài đặt người dùng" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "Cài đặt tài khoản" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "Thiết đặt hiển thị" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "Cài đặt tìm kiếm" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "Cài đặt toàn cục" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "" msgid "Delete Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "" @@ -7429,62 +7757,62 @@ msgstr "" msgid "Select Label Template" msgstr "" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "Số seri mới nhất" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 -msgid "Show items which are in stock" -msgstr "" - -#: templates/js/translated/table_filters.js:193 -msgid "In Production" +msgid "Show stock items which are depleted" msgstr "" #: templates/js/translated/table_filters.js:194 -msgid "Show items which are in production" +msgid "Show items which are in stock" msgstr "" #: templates/js/translated/table_filters.js:198 -msgid "Include Variants" +msgid "In Production" msgstr "" #: templates/js/translated/table_filters.js:199 -msgid "Include stock items for variant parts" +msgid "Show items which are in production" msgstr "" #: templates/js/translated/table_filters.js:203 -msgid "Installed" +msgid "Include Variants" msgstr "" #: templates/js/translated/table_filters.js:204 -msgid "Show stock items which are installed in another item" +msgid "Include stock items for variant parts" +msgstr "" + +#: templates/js/translated/table_filters.js:208 +msgid "Installed" msgstr "" #: templates/js/translated/table_filters.js:209 +msgid "Show stock items which are installed in another item" +msgstr "" + +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "Mua" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "Bán" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "Quản trị" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "Đăng xuất" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "Giới thiệu" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "" -#: users/models.py:204 +#: users/models.py:206 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 c482dd3fb5..08a330c36f 100644 --- a/InvenTree/locale/zh/LC_MESSAGES/django.po +++ b/InvenTree/locale/zh/LC_MESSAGES/django.po @@ -1,9 +1,10 @@ +#: templates/js/translated/order.js:1973 msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-03 10:37+0000\n" -"PO-Revision-Date: 2021-12-03 11:26\n" +"POT-Creation-Date: 2021-12-08 23:43+0000\n" +"PO-Revision-Date: 2021-12-08 23:47\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -34,8 +35,8 @@ msgid "Enter date" msgstr "输入日期" #: InvenTree/forms.py:120 build/forms.py:48 build/forms.py:69 build/forms.py:93 -#: order/forms.py:26 order/forms.py:37 order/forms.py:48 order/forms.py:59 -#: order/forms.py:70 part/forms.py:108 templates/account/email_confirm.html:20 +#: order/forms.py:24 order/forms.py:35 order/forms.py:46 order/forms.py:57 +#: part/forms.py:108 templates/account/email_confirm.html:20 #: templates/js/translated/forms.js:595 msgid "Confirm" msgstr "确认" @@ -85,8 +86,8 @@ msgstr "您必须输入相同的 Email 。" msgid "Duplicate serial: {n}" msgstr "重复的序列号: {n}" -#: InvenTree/helpers.py:437 order/models.py:318 order/models.py:440 -#: stock/views.py:1264 +#: InvenTree/helpers.py:437 order/models.py:279 order/models.py:420 +#: stock/views.py:1231 msgid "Invalid quantity provided" msgstr "提供的数量无效" @@ -122,7 +123,7 @@ msgstr "缺少文件" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:132 stock/models.py:1864 +#: InvenTree/models.py:132 stock/models.py:1852 #: templates/js/translated/attachment.js:117 msgid "Attachment" msgstr "附件" @@ -132,7 +133,7 @@ msgid "Select file to attach" msgstr "选择附件" #: InvenTree/models.py:139 company/models.py:131 company/models.py:348 -#: company/models.py:564 order/models.py:163 part/models.py:797 +#: company/models.py:564 order/models.py:124 part/models.py:797 #: report/templates/report/inventree_build_order_base.html:165 #: templates/js/translated/company.js:537 #: templates/js/translated/company.js:826 templates/js/translated/part.js:1258 @@ -140,7 +141,7 @@ msgid "Link" msgstr "链接" #: InvenTree/models.py:140 build/models.py:330 part/models.py:798 -#: stock/models.py:530 +#: stock/models.py:524 msgid "Link to external URL" msgstr "链接到外部 URL" @@ -152,10 +153,10 @@ msgstr "注释" msgid "File comment" msgstr "文件注释" -#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1185 -#: common/models.py:1186 part/models.py:2205 part/models.py:2225 +#: InvenTree/models.py:149 InvenTree/models.py:150 common/models.py:1213 +#: common/models.py:1214 part/models.py:2205 part/models.py:2225 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2166 +#: templates/js/translated/stock.js:2341 msgid "User" msgstr "用户" @@ -194,10 +195,15 @@ msgstr "选择无效" #: InvenTree/models.py:277 InvenTree/models.py:278 company/models.py:415 #: label/models.py:112 part/models.py:741 part/models.py:2389 -#: report/models.py:181 templates/InvenTree/settings/settings.html:259 +#: plugin/models.py:39 report/models.py:181 +#: templates/InvenTree/settings/mixins/urls.html:11 +#: 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/js/translated/company.js:638 templates/js/translated/part.js:506 #: templates/js/translated/part.js:643 templates/js/translated/part.js:1565 -#: templates/js/translated/stock.js:1959 +#: templates/js/translated/stock.js:2134 msgid "Name" msgstr "名称" @@ -206,22 +212,23 @@ msgstr "名称" #: company/models.py:570 company/templates/company/company_base.html:68 #: company/templates/company/manufacturer_part.html:76 #: company/templates/company/supplier_part.html:73 label/models.py:119 -#: order/models.py:161 part/models.py:764 part/templates/part/category.html:70 +#: order/models.py:122 part/models.py:764 part/templates/part/category.html:70 #: part/templates/part/part_base.html:163 #: part/templates/part/set_category.html:14 report/models.py:194 #: report/models.py:553 report/models.py:592 #: report/templates/report/inventree_build_order_base.html:118 -#: stock/templates/stock/location.html:89 templates/js/translated/bom.js:215 -#: templates/js/translated/bom.js:428 templates/js/translated/build.js:1621 -#: templates/js/translated/company.js:345 +#: stock/templates/stock/location.html:89 +#: templates/InvenTree/settings/plugin_settings.html:33 +#: templates/js/translated/bom.js:215 templates/js/translated/bom.js:428 +#: templates/js/translated/build.js:1627 templates/js/translated/company.js:345 #: templates/js/translated/company.js:548 -#: templates/js/translated/company.js:837 templates/js/translated/order.js:680 -#: templates/js/translated/order.js:854 templates/js/translated/order.js:1090 +#: templates/js/translated/company.js:837 templates/js/translated/order.js:836 +#: templates/js/translated/order.js:1019 templates/js/translated/order.js:1258 #: templates/js/translated/part.js:565 templates/js/translated/part.js:933 #: templates/js/translated/part.js:1018 templates/js/translated/part.js:1188 #: templates/js/translated/part.js:1584 templates/js/translated/part.js:1653 -#: templates/js/translated/stock.js:1233 templates/js/translated/stock.js:1971 -#: templates/js/translated/stock.js:2016 +#: templates/js/translated/stock.js:1390 templates/js/translated/stock.js:2146 +#: templates/js/translated/stock.js:2191 msgid "Description" msgstr "描述信息" @@ -241,83 +248,83 @@ msgstr "必须是有效数字" msgid "Filename" msgstr "文件名" -#: InvenTree/settings.py:670 +#: InvenTree/settings.py:689 msgid "German" msgstr "德语" -#: InvenTree/settings.py:671 +#: InvenTree/settings.py:690 msgid "Greek" msgstr "希腊语" -#: InvenTree/settings.py:672 +#: InvenTree/settings.py:691 msgid "English" msgstr "英语" -#: InvenTree/settings.py:673 +#: InvenTree/settings.py:692 msgid "Spanish" msgstr "西班牙语" -#: InvenTree/settings.py:674 +#: InvenTree/settings.py:693 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:675 +#: InvenTree/settings.py:694 msgid "French" msgstr "法语" -#: InvenTree/settings.py:676 +#: InvenTree/settings.py:695 msgid "Hebrew" msgstr "希伯来语" -#: InvenTree/settings.py:677 +#: InvenTree/settings.py:696 msgid "Italian" msgstr "意大利语" -#: InvenTree/settings.py:678 +#: InvenTree/settings.py:697 msgid "Japanese" msgstr "日语" -#: InvenTree/settings.py:679 +#: InvenTree/settings.py:698 msgid "Korean" msgstr "韩语" -#: InvenTree/settings.py:680 +#: InvenTree/settings.py:699 msgid "Dutch" msgstr "荷兰语" -#: InvenTree/settings.py:681 +#: InvenTree/settings.py:700 msgid "Norwegian" msgstr "挪威语" -#: InvenTree/settings.py:682 +#: InvenTree/settings.py:701 msgid "Polish" msgstr "波兰语" -#: InvenTree/settings.py:683 +#: InvenTree/settings.py:702 msgid "Portugese" msgstr "" -#: InvenTree/settings.py:684 +#: InvenTree/settings.py:703 msgid "Russian" msgstr "俄语" -#: InvenTree/settings.py:685 +#: InvenTree/settings.py:704 msgid "Swedish" msgstr "瑞典语" -#: InvenTree/settings.py:686 +#: InvenTree/settings.py:705 msgid "Thai" msgstr "泰语" -#: InvenTree/settings.py:687 +#: InvenTree/settings.py:706 msgid "Turkish" msgstr "土耳其语" -#: InvenTree/settings.py:688 +#: InvenTree/settings.py:707 msgid "Vietnamese" msgstr "越南语" -#: InvenTree/settings.py:689 +#: InvenTree/settings.py:708 msgid "Chinese" msgstr "中文(简体)" @@ -334,7 +341,7 @@ msgid "InvenTree system health checks failed" msgstr "InventTree系统健康检查失败" #: InvenTree/status_codes.py:101 InvenTree/status_codes.py:142 -#: InvenTree/status_codes.py:311 +#: InvenTree/status_codes.py:311 templates/js/translated/table_filters.js:313 msgid "Pending" msgstr "待定" @@ -343,6 +350,8 @@ msgid "Placed" msgstr "已添加" #: InvenTree/status_codes.py:103 InvenTree/status_codes.py:314 +#: order/templates/order/order_base.html:128 +#: order/templates/order/sales_order_base.html:132 msgid "Complete" msgstr "完成" @@ -361,8 +370,8 @@ msgstr "丢失" msgid "Returned" msgstr "已退回" -#: InvenTree/status_codes.py:143 -#: order/templates/order/sales_order_base.html:148 +#: InvenTree/status_codes.py:143 order/models.py:939 +#: templates/js/translated/order.js:1980 templates/js/translated/order.js:2255 msgid "Shipped" msgstr "已发货" @@ -442,7 +451,7 @@ msgstr "从父项拆分" msgid "Split child item" msgstr "拆分子项" -#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:208 +#: InvenTree/status_codes.py:291 templates/js/translated/table_filters.js:213 msgid "Sent to customer" msgstr "发送给客户" @@ -522,55 +531,55 @@ msgstr "设置密码" msgid "Password fields must match" msgstr "密码字段必须相匹配。" -#: InvenTree/views.py:883 templates/navbar.html:101 +#: InvenTree/views.py:883 templates/navbar.html:126 msgid "System Information" msgstr "系统信息" -#: barcodes/api.py:53 barcodes/api.py:150 +#: barcodes/api.py:54 barcodes/api.py:151 msgid "Must provide barcode_data parameter" msgstr "必须提供条码数据参数" -#: barcodes/api.py:126 +#: barcodes/api.py:127 msgid "No match found for barcode data" msgstr "未找到匹配条形码数据" -#: barcodes/api.py:128 +#: barcodes/api.py:129 msgid "Match found for barcode data" msgstr "找到匹配条形码数据" -#: barcodes/api.py:153 +#: barcodes/api.py:154 msgid "Must provide stockitem parameter" msgstr "必须提供库存项参数" -#: barcodes/api.py:160 +#: barcodes/api.py:161 msgid "No matching stock item found" msgstr "未找到匹配的库存项" -#: barcodes/api.py:190 -msgid "Barcode already matches StockItem object" -msgstr "条形码已经匹配库存项" +#: barcodes/api.py:191 +msgid "Barcode already matches Stock Item" +msgstr "" -#: barcodes/api.py:194 -msgid "Barcode already matches StockLocation object" -msgstr "条形码已经匹配仓储地对象" +#: barcodes/api.py:195 +msgid "Barcode already matches Stock Location" +msgstr "" -#: barcodes/api.py:198 -msgid "Barcode already matches Part object" -msgstr "条形码已经匹配商品对象" +#: barcodes/api.py:199 +msgid "Barcode already matches Part" +msgstr "" -#: barcodes/api.py:204 barcodes/api.py:216 -msgid "Barcode hash already matches StockItem object" -msgstr "条码哈希值已经匹配库存项目" +#: barcodes/api.py:205 barcodes/api.py:217 +msgid "Barcode hash already matches Stock Item" +msgstr "" -#: barcodes/api.py:222 -msgid "Barcode associated with StockItem" -msgstr "与库存项关联的条形码" +#: barcodes/api.py:223 +msgid "Barcode associated with Stock Item" +msgstr "" #: build/forms.py:36 build/models.py:1283 #: build/templates/build/build_base.html:132 -#: build/templates/build/detail.html:35 common/models.py:1225 +#: build/templates/build/detail.html:35 common/models.py:1253 #: company/forms.py:42 company/templates/company/supplier_part.html:251 -#: order/forms.py:102 order/models.py:729 order/models.py:991 +#: order/models.py:794 order/models.py:1205 order/serializers.py:810 #: order/templates/order/order_wizard/match_parts.html:30 #: order/templates/order/order_wizard/select_parts.html:34 part/forms.py:223 #: part/forms.py:239 part/forms.py:255 part/models.py:2576 @@ -582,20 +591,23 @@ msgstr "与库存项关联的条形码" #: report/templates/report/inventree_so_report.html:91 #: report/templates/report/inventree_test_report_base.html:81 #: report/templates/report/inventree_test_report_base.html:139 -#: stock/forms.py:156 stock/serializers.py:291 +#: stock/forms.py:142 stock/serializers.py:293 #: stock/templates/stock/item_base.html:174 +#: stock/templates/stock/item_base.html:255 +#: stock/templates/stock/item_base.html:263 #: templates/js/translated/barcode.js:385 templates/js/translated/bom.js:443 -#: templates/js/translated/build.js:235 templates/js/translated/build.js:435 -#: templates/js/translated/build.js:629 templates/js/translated/build.js:639 -#: templates/js/translated/build.js:1015 templates/js/translated/build.js:1362 +#: 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/model_renderers.js:99 -#: templates/js/translated/order.js:891 templates/js/translated/order.js:1204 -#: templates/js/translated/order.js:1282 templates/js/translated/order.js:1289 -#: templates/js/translated/order.js:1378 templates/js/translated/order.js:1478 -#: templates/js/translated/part.js:843 templates/js/translated/part.js:1796 -#: templates/js/translated/part.js:1919 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:378 templates/js/translated/stock.js:2151 -#: templates/js/translated/stock.js:2253 +#: templates/js/translated/order.js:101 templates/js/translated/order.js:1056 +#: templates/js/translated/order.js:1578 templates/js/translated/order.js:1859 +#: templates/js/translated/order.js:1947 templates/js/translated/order.js:2036 +#: templates/js/translated/order.js:2150 templates/js/translated/part.js:843 +#: templates/js/translated/part.js:1796 templates/js/translated/part.js:1919 +#: templates/js/translated/part.js:1997 templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:579 templates/js/translated/stock.js:2326 +#: templates/js/translated/stock.js:2428 msgid "Quantity" msgstr "数量" @@ -603,9 +615,9 @@ msgstr "数量" msgid "Enter quantity for build output" msgstr "输入生产产出数量" -#: build/forms.py:41 order/forms.py:96 stock/forms.py:95 -#: stock/serializers.py:312 templates/js/translated/stock.js:225 -#: templates/js/translated/stock.js:379 +#: build/forms.py:41 order/serializers.py:814 stock/forms.py:81 +#: stock/serializers.py:314 templates/js/translated/stock.js:229 +#: templates/js/translated/stock.js:383 msgid "Serial Numbers" msgstr "序列号" @@ -640,17 +652,17 @@ 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:397 +#: templates/js/translated/build.js:402 msgid "Build Order" msgstr "生产订单" #: build/models.py:138 build/templates/build/build_base.html:13 #: build/templates/build/index.html:8 build/templates/build/index.html:12 -#: order/templates/order/sales_order_detail.html:42 -#: order/templates/order/so_sidebar.html:7 +#: order/templates/order/sales_order_detail.html:92 +#: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:20 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:145 -#: templates/InvenTree/settings/sidebar.html:42 users/models.py:44 +#: templates/InvenTree/settings/sidebar.html:43 users/models.py:44 msgid "Build Orders" msgstr "生产订单" @@ -658,13 +670,13 @@ msgstr "生产订单" msgid "Build Order Reference" msgstr "相关生产订单" -#: build/models.py:199 order/models.py:249 order/models.py:556 -#: order/models.py:736 part/models.py:2585 +#: build/models.py:199 order/models.py:210 order/models.py:536 +#: order/models.py:801 part/models.py:2585 #: 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:435 templates/js/translated/build.js:1119 -#: templates/js/translated/order.js:885 templates/js/translated/order.js:1472 +#: templates/js/translated/bom.js:435 templates/js/translated/build.js:1124 +#: templates/js/translated/order.js:1050 templates/js/translated/order.js:2144 msgid "Reference" msgstr "引用" @@ -683,7 +695,7 @@ msgstr "此次生产匹配的订单" #: build/models.py:225 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:30 company/models.py:705 -#: order/models.py:789 order/models.py:860 +#: order/models.py:854 order/models.py:928 #: order/templates/order/order_wizard/select_parts.html:32 part/models.py:357 #: part/models.py:2151 part/models.py:2167 part/models.py:2186 #: part/models.py:2203 part/models.py:2305 part/models.py:2427 @@ -698,14 +710,16 @@ 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:214 -#: templates/js/translated/bom.js:393 templates/js/translated/build.js:620 -#: templates/js/translated/build.js:988 templates/js/translated/build.js:1359 -#: templates/js/translated/build.js:1626 templates/js/translated/company.js:489 -#: templates/js/translated/company.js:746 templates/js/translated/order.js:426 -#: templates/js/translated/order.js:839 templates/js/translated/order.js:1456 -#: templates/js/translated/part.js:918 templates/js/translated/part.js:999 -#: templates/js/translated/part.js:1166 templates/js/translated/stock.js:590 -#: templates/js/translated/stock.js:1190 templates/js/translated/stock.js:2241 +#: templates/js/translated/bom.js:393 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:489 +#: templates/js/translated/company.js:746 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 +#: templates/js/translated/order.js:2128 templates/js/translated/part.js:918 +#: templates/js/translated/part.js:999 templates/js/translated/part.js:1166 +#: templates/js/translated/stock.js:553 templates/js/translated/stock.js:747 +#: templates/js/translated/stock.js:1347 templates/js/translated/stock.js:2416 msgid "Part" msgstr "商品" @@ -721,7 +735,8 @@ msgstr "相关销售订单" msgid "SalesOrder to which this build is allocated" msgstr "此次生产匹配的销售订单" -#: build/models.py:247 templates/js/translated/build.js:1347 +#: build/models.py:247 templates/js/translated/build.js:1352 +#: templates/js/translated/order.js:1564 msgid "Source Location" msgstr "来源地点" @@ -761,7 +776,7 @@ msgstr "生产状态" msgid "Build status code" msgstr "生产状态代码" -#: build/models.py:285 stock/models.py:534 +#: build/models.py:285 stock/models.py:528 msgid "Batch Code" msgstr "批量代码" @@ -769,12 +784,12 @@ msgstr "批量代码" msgid "Batch code for this build output" msgstr "此生产产出的批量代码" -#: build/models.py:292 order/models.py:165 part/models.py:936 -#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1103 +#: build/models.py:292 order/models.py:126 part/models.py:936 +#: part/templates/part/part_base.html:313 templates/js/translated/order.js:1271 msgid "Creation Date" msgstr "创建日期" -#: build/models.py:296 order/models.py:578 +#: build/models.py:296 order/models.py:558 msgid "Target completion date" msgstr "预计完成日期" @@ -782,8 +797,8 @@ msgstr "预计完成日期" msgid "Target date for build completion. Build will be overdue after this date." msgstr "生产完成的目标日期。生产将在此日期之后逾期。" -#: build/models.py:300 order/models.py:291 -#: templates/js/translated/build.js:1697 +#: build/models.py:300 order/models.py:252 +#: templates/js/translated/build.js:1703 msgid "Completion Date" msgstr "完成日期:" @@ -791,7 +806,7 @@ msgstr "完成日期:" msgid "completed by" msgstr "完成人" -#: build/models.py:314 templates/js/translated/build.js:1668 +#: build/models.py:314 templates/js/translated/build.js:1674 msgid "Issued by" msgstr "发布者" @@ -800,11 +815,11 @@ msgid "User who issued this build order" msgstr "发布此生产订单的用户" #: build/models.py:323 build/templates/build/build_base.html:185 -#: build/templates/build/detail.html:116 order/models.py:179 -#: order/templates/order/order_base.html:158 -#: order/templates/order/sales_order_base.html:162 part/models.py:940 +#: build/templates/build/detail.html:116 order/models.py:140 +#: order/templates/order/order_base.html:170 +#: order/templates/order/sales_order_base.html:182 part/models.py:940 #: report/templates/report/inventree_build_order_base.html:159 -#: templates/js/translated/build.js:1680 templates/js/translated/order.js:699 +#: templates/js/translated/build.js:1686 templates/js/translated/order.js:864 msgid "Responsible" msgstr "责任人" @@ -815,7 +830,7 @@ msgstr "负责此生产订单的用户" #: build/models.py:329 build/templates/build/detail.html:102 #: company/templates/company/manufacturer_part.html:102 #: company/templates/company/supplier_part.html:126 -#: part/templates/part/part_base.html:354 stock/models.py:528 +#: part/templates/part/part_base.html:354 stock/models.py:522 #: stock/templates/stock/item_base.html:374 msgid "External Link" msgstr "外部链接" @@ -823,18 +838,19 @@ msgstr "外部链接" #: build/models.py:334 build/serializers.py:201 #: build/templates/build/sidebar.html:21 company/models.py:142 #: company/models.py:577 company/templates/company/sidebar.html:25 -#: order/models.py:183 order/models.py:738 +#: order/models.py:144 order/models.py:803 order/models.py:1049 #: order/templates/order/po_sidebar.html:11 -#: order/templates/order/so_sidebar.html:11 part/models.py:925 +#: order/templates/order/so_sidebar.html:17 part/models.py:925 #: part/templates/part/detail.html:116 part/templates/part/part_sidebar.html:50 #: report/templates/report/inventree_build_order_base.html:173 -#: stock/forms.py:154 stock/forms.py:204 stock/forms.py:238 stock/models.py:600 -#: stock/models.py:1764 stock/models.py:1870 stock/serializers.py:330 -#: stock/serializers.py:588 stock/templates/stock/stock_sidebar.html:21 +#: stock/forms.py:140 stock/forms.py:190 stock/forms.py:224 stock/models.py:594 +#: stock/models.py:1752 stock/models.py:1858 stock/serializers.py:332 +#: stock/serializers.py:624 stock/serializers.py:711 +#: stock/templates/stock/stock_sidebar.html:21 #: templates/js/translated/barcode.js:58 templates/js/translated/bom.js:599 -#: templates/js/translated/company.js:842 templates/js/translated/order.js:984 -#: templates/js/translated/order.js:1582 templates/js/translated/stock.js:973 -#: templates/js/translated/stock.js:1452 +#: templates/js/translated/company.js:842 templates/js/translated/order.js:1149 +#: templates/js/translated/order.js:1445 templates/js/translated/order.js:2280 +#: templates/js/translated/stock.js:1130 templates/js/translated/stock.js:1616 msgid "Notes" msgstr "备注" @@ -867,7 +883,7 @@ msgstr "" msgid "Stock item is over-allocated" msgstr "库存物品分配过度!" -#: build/models.py:1133 order/models.py:964 +#: build/models.py:1133 order/models.py:1165 msgid "Allocation quantity must be greater than zero" msgstr "分配数量必须大于0" @@ -880,8 +896,8 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1253 stock/templates/stock/item_base.html:346 -#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1599 -#: templates/navbar.html:33 +#: templates/InvenTree/search.html:143 templates/js/translated/build.js:1605 +#: templates/navbar.html:35 msgid "Build" msgstr "生产" @@ -889,14 +905,17 @@ msgstr "生产" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1270 build/serializers.py:328 +#: build/models.py:1270 build/serializers.py:328 order/serializers.py:690 +#: order/serializers.py:708 stock/serializers.py:562 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:16 #: stock/templates/stock/item_base.html:368 -#: templates/js/translated/build.js:408 templates/js/translated/build.js:413 -#: templates/js/translated/build.js:1361 templates/js/translated/build.js:1742 -#: templates/js/translated/order.js:1177 templates/js/translated/order.js:1182 -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/build.js:413 templates/js/translated/build.js:418 +#: templates/js/translated/build.js:1366 templates/js/translated/build.js:1748 +#: 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 +#: templates/js/translated/stock.js:554 templates/js/translated/stock.js:2277 msgid "Stock Item" msgstr "库存项" @@ -936,16 +955,17 @@ msgstr "" msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:190 order/serializers.py:228 order/serializers.py:296 -#: stock/forms.py:236 stock/serializers.py:323 stock/serializers.py:690 +#: build/serializers.py:190 order/serializers.py:226 order/serializers.py:294 +#: stock/forms.py:222 stock/serializers.py:325 stock/serializers.py:813 #: stock/templates/stock/item_base.html:314 #: templates/js/translated/barcode.js:384 -#: templates/js/translated/barcode.js:557 templates/js/translated/build.js:420 -#: templates/js/translated/build.js:1027 templates/js/translated/order.js:348 -#: templates/js/translated/order.js:1189 templates/js/translated/order.js:1297 -#: templates/js/translated/order.js:1303 templates/js/translated/part.js:177 -#: templates/js/translated/stock.js:592 templates/js/translated/stock.js:1333 -#: templates/js/translated/stock.js:2043 +#: 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/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:177 templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:1497 +#: templates/js/translated/stock.js:2218 msgid "Location" msgstr "地点" @@ -954,12 +974,12 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:197 build/templates/build/build_base.html:137 -#: build/templates/build/detail.html:63 order/models.py:572 -#: order/serializers.py:249 stock/templates/stock/item_base.html:180 -#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1655 -#: templates/js/translated/order.js:431 templates/js/translated/order.js:1095 -#: templates/js/translated/stock.js:1308 templates/js/translated/stock.js:2120 -#: templates/js/translated/stock.js:2269 +#: build/templates/build/detail.html:63 order/models.py:552 +#: order/serializers.py:247 stock/templates/stock/item_base.html:180 +#: templates/js/translated/barcode.js:140 templates/js/translated/build.js:1661 +#: templates/js/translated/order.js:591 templates/js/translated/order.js:840 +#: templates/js/translated/order.js:1263 templates/js/translated/stock.js:1472 +#: templates/js/translated/stock.js:2295 templates/js/translated/stock.js:2444 msgid "Status" msgstr "状态" @@ -984,16 +1004,16 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:334 stock/serializers.py:569 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:348 order/models.py:316 order/serializers.py:242 -#: stock/models.py:371 stock/models.py:1093 stock/serializers.py:303 +#: build/serializers.py:348 order/models.py:277 order/serializers.py:240 +#: stock/models.py:365 stock/models.py:1081 stock/serializers.py:305 msgid "Quantity must be greater than zero" msgstr "" -#: build/serializers.py:390 +#: build/serializers.py:390 order/serializers.py:741 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1006,7 +1026,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:431 +#: build/serializers.py:431 order/serializers.py:984 msgid "Allocation items must be provided" msgstr "" @@ -1079,11 +1099,11 @@ msgstr "" #: build/templates/build/build_base.html:146 #: build/templates/build/detail.html:132 -#: order/templates/order/order_base.html:144 -#: order/templates/order/sales_order_base.html:141 +#: 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:1692 templates/js/translated/order.js:689 -#: templates/js/translated/order.js:1108 +#: templates/js/translated/build.js:1698 templates/js/translated/order.js:854 +#: templates/js/translated/order.js:1276 msgid "Target Date" msgstr "预计日期" @@ -1096,28 +1116,28 @@ msgstr "此次生产的截止日期为 %(target)s" #: build/templates/build/build_base.html:196 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:93 -#: templates/js/translated/table_filters.js:294 -#: templates/js/translated/table_filters.js:322 -#: templates/js/translated/table_filters.js:339 +#: templates/js/translated/table_filters.js:299 +#: templates/js/translated/table_filters.js:340 +#: templates/js/translated/table_filters.js:361 msgid "Overdue" msgstr "逾期" #: build/templates/build/build_base.html:158 #: build/templates/build/detail.html:68 build/templates/build/detail.html:143 -#: templates/js/translated/build.js:1641 -#: templates/js/translated/table_filters.js:304 +#: order/templates/order/sales_order_base.html:170 +#: templates/js/translated/build.js:1647 +#: templates/js/translated/table_filters.js:370 msgid "Completed" msgstr "已完成" #: build/templates/build/build_base.html:171 -#: build/templates/build/detail.html:95 order/models.py:857 -#: order/templates/order/sales_order_base.html:9 +#: build/templates/build/detail.html:95 order/models.py:925 +#: order/models.py:1021 order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 -#: order/templates/order/sales_order_ship.html:25 #: report/templates/report/inventree_build_order_base.html:136 #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:308 -#: templates/js/translated/order.js:1050 +#: templates/js/translated/order.js:1218 msgid "Sales Order" msgstr "销售订单" @@ -1191,8 +1211,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:50 order/models.py:811 stock/forms.py:150 -#: templates/js/translated/order.js:432 templates/js/translated/order.js:973 +#: build/templates/build/detail.html:50 order/models.py:876 stock/forms.py:136 +#: templates/js/translated/order.js:592 templates/js/translated/order.js:1138 msgid "Destination" msgstr "" @@ -1200,22 +1220,22 @@ msgstr "" msgid "Destination location not specified" msgstr "" -#: build/templates/build/detail.html:74 templates/js/translated/build.js:647 +#: build/templates/build/detail.html:74 templates/js/translated/build.js:652 msgid "Allocated Parts" msgstr "" #: build/templates/build/detail.html:81 #: stock/templates/stock/item_base.html:332 -#: templates/js/translated/stock.js:1322 templates/js/translated/stock.js:2276 +#: templates/js/translated/stock.js:1486 templates/js/translated/stock.js:2451 #: templates/js/translated/table_filters.js:151 -#: templates/js/translated/table_filters.js:233 +#: templates/js/translated/table_filters.js:238 msgid "Batch" msgstr "" #: build/templates/build/detail.html:127 -#: order/templates/order/order_base.html:131 -#: order/templates/order/sales_order_base.html:135 -#: templates/js/translated/build.js:1663 +#: order/templates/order/order_base.html:143 +#: order/templates/order/sales_order_base.html:157 +#: templates/js/translated/build.js:1669 msgid "Created" msgstr "已创建" @@ -1235,7 +1255,7 @@ msgstr "子生产订单" msgid "Allocate Stock to Build" msgstr "为生产分配库存" -#: build/templates/build/detail.html:177 templates/js/translated/build.js:1202 +#: build/templates/build/detail.html:177 templates/js/translated/build.js:1207 msgid "Unallocate stock" msgstr "未分配库存" @@ -1257,7 +1277,7 @@ msgstr "订单所需部件" #: build/templates/build/detail.html:185 #: company/templates/company/detail.html:38 -#: company/templates/company/detail.html:85 order/views.py:509 +#: company/templates/company/detail.html:85 order/views.py:463 #: part/templates/part/category.html:173 msgid "Order Parts" msgstr "订购商品" @@ -1309,8 +1329,8 @@ msgstr "" #: build/templates/build/detail.html:278 build/templates/build/sidebar.html:19 #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:60 -#: order/templates/order/sales_order_detail.html:52 -#: order/templates/order/so_sidebar.html:9 part/templates/part/detail.html:193 +#: order/templates/order/sales_order_detail.html:107 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:193 #: part/templates/part/part_sidebar.html:48 stock/templates/stock/item.html:95 #: stock/templates/stock/stock_sidebar.html:19 msgid "Attachments" @@ -1325,8 +1345,8 @@ msgstr "生产备注" #: company/templates/company/detail.html:215 #: order/templates/order/purchase_order_detail.html:80 #: order/templates/order/purchase_order_detail.html:108 -#: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:99 +#: order/templates/order/sales_order_detail.html:127 +#: order/templates/order/sales_order_detail.html:186 #: part/templates/part/detail.html:120 stock/templates/stock/item.html:115 #: stock/templates/stock/item.html:205 msgid "Edit Notes" @@ -1384,7 +1404,7 @@ msgstr "创建创建生产产出" msgid "Maximum output quantity is " msgstr "最大产出量是 " -#: build/views.py:122 stock/serializers.py:361 stock/views.py:1290 +#: build/views.py:122 stock/serializers.py:363 stock/views.py:1257 msgid "Serial numbers already exist" msgstr "序列号已存在" @@ -1400,7 +1420,7 @@ msgstr "删除生产产出" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:219 stock/views.py:385 +#: build/views.py:219 stock/views.py:352 msgid "Check the confirmation box" msgstr "选中确认框" @@ -1469,7 +1489,7 @@ msgstr "" msgid "Select {name} file to upload" msgstr "" -#: common/models.py:340 common/models.py:970 common/models.py:1178 +#: common/models.py:340 common/models.py:998 common/models.py:1206 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -1557,7 +1577,7 @@ msgstr "" msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/models.py:649 templates/InvenTree/settings/sidebar.html:30 +#: common/models.py:649 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" msgstr "" @@ -1623,7 +1643,7 @@ msgstr "" #: common/models.py:703 part/models.py:2429 report/models.py:187 #: templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:373 +#: templates/js/translated/table_filters.js:404 msgid "Template" msgstr "模板" @@ -1633,7 +1653,7 @@ msgstr "" #: common/models.py:710 part/models.py:888 templates/js/translated/bom.js:956 #: templates/js/translated/table_filters.js:168 -#: templates/js/translated/table_filters.js:385 +#: templates/js/translated/table_filters.js:416 msgid "Assembly" msgstr "组装" @@ -1642,7 +1662,7 @@ msgid "Parts can be assembled from other components by default" msgstr "" #: common/models.py:717 part/models.py:894 -#: templates/js/translated/table_filters.js:389 +#: templates/js/translated/table_filters.js:420 msgid "Component" msgstr "组件" @@ -1659,7 +1679,7 @@ msgid "Parts are purchaseable by default" msgstr "商品默认可购买" #: common/models.py:731 part/models.py:910 -#: templates/js/translated/table_filters.js:397 +#: templates/js/translated/table_filters.js:428 msgid "Salable" msgstr "可销售" @@ -1670,7 +1690,7 @@ msgstr "商品默认可销售" #: common/models.py:738 part/models.py:900 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:100 -#: templates/js/translated/table_filters.js:401 +#: templates/js/translated/table_filters.js:432 msgid "Trackable" msgstr "可追踪" @@ -1932,230 +1952,262 @@ msgstr "" msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1001 +#: common/models.py:961 +msgid "Enable URL integration" +msgstr "" + +#: common/models.py:962 +msgid "Enable plugins to add URL routes" +msgstr "" + +#: common/models.py:968 +msgid "Enable navigation integration" +msgstr "" + +#: common/models.py:969 +msgid "Enable plugins to integrate into navigation" +msgstr "" + +#: common/models.py:975 +msgid "Enable global setting integration" +msgstr "" + +#: common/models.py:976 +msgid "Enable plugins to integrate into inventree global settings" +msgstr "" + +#: common/models.py:982 +msgid "Enable app integration" +msgstr "" + +#: common/models.py:983 +msgid "Enable plugins to add apps" +msgstr "" + +#: common/models.py:1029 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1002 +#: common/models.py:1030 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1007 +#: common/models.py:1035 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1008 +#: common/models.py:1036 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1013 +#: common/models.py:1041 msgid "Show latest parts" msgstr "显示最近商品" -#: common/models.py:1014 +#: common/models.py:1042 msgid "Show latest parts on the homepage" msgstr "在主页上显示最近商品" -#: common/models.py:1019 +#: common/models.py:1047 msgid "Recent Part Count" msgstr "" -#: common/models.py:1020 +#: common/models.py:1048 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1026 +#: common/models.py:1054 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1027 +#: common/models.py:1055 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1032 +#: common/models.py:1060 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1033 +#: common/models.py:1061 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1038 +#: common/models.py:1066 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1039 +#: common/models.py:1067 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1044 +#: common/models.py:1072 msgid "Show low stock" msgstr "" -#: common/models.py:1045 +#: common/models.py:1073 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1050 +#: common/models.py:1078 msgid "Show depleted stock" msgstr "" -#: common/models.py:1051 +#: common/models.py:1079 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1056 +#: common/models.py:1084 msgid "Show needed stock" msgstr "" -#: common/models.py:1057 +#: common/models.py:1085 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1062 +#: common/models.py:1090 msgid "Show expired stock" msgstr "" -#: common/models.py:1063 +#: common/models.py:1091 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1068 +#: common/models.py:1096 msgid "Show stale stock" msgstr "" -#: common/models.py:1069 +#: common/models.py:1097 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1074 +#: common/models.py:1102 msgid "Show pending builds" msgstr "" -#: common/models.py:1075 +#: common/models.py:1103 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1080 +#: common/models.py:1108 msgid "Show overdue builds" msgstr "显示逾期生产" -#: common/models.py:1081 +#: common/models.py:1109 msgid "Show overdue builds on the homepage" msgstr "在主页上显示逾期的生产" -#: common/models.py:1086 +#: common/models.py:1114 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1087 +#: common/models.py:1115 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1092 +#: common/models.py:1120 msgid "Show overdue POs" msgstr "" -#: common/models.py:1093 +#: common/models.py:1121 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1098 +#: common/models.py:1126 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1099 +#: common/models.py:1127 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1104 +#: common/models.py:1132 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1105 +#: common/models.py:1133 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1111 +#: common/models.py:1139 msgid "Inline label display" msgstr "内嵌标签显示" -#: common/models.py:1112 +#: common/models.py:1140 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "在浏览器中显示 PDF 标签,而不是以文件形式下载" -#: common/models.py:1118 +#: common/models.py:1146 msgid "Inline report display" msgstr "" -#: common/models.py:1119 +#: common/models.py:1147 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "在浏览器中显示 PDF 报告,而不是以文件形式下载" -#: common/models.py:1125 +#: common/models.py:1153 msgid "Search Preview Results" msgstr "搜索预览结果" -#: common/models.py:1126 +#: common/models.py:1154 msgid "Number of results to show in search preview window" msgstr "搜索预览窗口中显示的结果数" -#: common/models.py:1132 +#: common/models.py:1160 msgid "Search Show Stock" msgstr "" -#: common/models.py:1133 +#: common/models.py:1161 msgid "Display stock levels in search preview window" msgstr "" -#: common/models.py:1139 +#: common/models.py:1167 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1140 +#: common/models.py:1168 msgid "Hide inactive parts in search preview window" msgstr "" -#: common/models.py:1146 +#: common/models.py:1174 msgid "Show Quantity in Forms" msgstr "在表格中显示数量" -#: common/models.py:1147 +#: common/models.py:1175 msgid "Display available part quantity in some forms" msgstr "在某些表格中显示可用的商品数量" -#: common/models.py:1153 +#: common/models.py:1181 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1154 +#: common/models.py:1182 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1160 +#: common/models.py:1188 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1161 +#: common/models.py:1189 msgid "InvenTree navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1226 company/forms.py:43 +#: common/models.py:1254 company/forms.py:43 msgid "Price break quantity" msgstr "" -#: common/models.py:1233 company/serializers.py:264 +#: common/models.py:1261 company/serializers.py:264 #: company/templates/company/supplier_part.html:256 #: templates/js/translated/part.js:852 templates/js/translated/part.js:1801 msgid "Price" msgstr "价格" -#: common/models.py:1234 +#: common/models.py:1262 msgid "Unit price at specified quantity" msgstr "" #: common/views.py:93 order/templates/order/order_wizard/po_upload.html:49 -#: order/templates/order/purchase_order_detail.html:24 order/views.py:289 +#: order/templates/order/purchase_order_detail.html:24 order/views.py:243 #: part/templates/part/bom_upload/upload_file.html:52 #: part/templates/part/import_wizard/part_upload.html:47 part/views.py:212 #: part/views.py:858 @@ -2163,7 +2215,7 @@ msgid "Upload File" msgstr "上传文件" #: common/views.py:94 order/templates/order/order_wizard/match_fields.html:52 -#: order/views.py:290 part/templates/part/bom_upload/match_fields.html:52 +#: order/views.py:244 part/templates/part/bom_upload/match_fields.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:45 #: part/templates/part/import_wizard/match_fields.html:52 part/views.py:213 #: part/views.py:859 @@ -2195,6 +2247,7 @@ msgid "Previous Step" msgstr "" #: company/forms.py:24 part/forms.py:46 +#: templates/InvenTree/settings/mixins/urls.html:12 msgid "URL" msgstr "URL" @@ -2211,6 +2264,7 @@ msgid "Description of the company" msgstr "公司简介" #: company/models.py:112 company/templates/company/company_base.html:97 +#: templates/InvenTree/settings/plugin_settings.html:55 #: templates/js/translated/company.js:349 msgid "Website" msgstr "网站" @@ -2285,7 +2339,7 @@ msgid "Does this company manufacture parts?" msgstr "该公司制造商品吗?" #: company/models.py:152 company/serializers.py:270 -#: company/templates/company/company_base.html:103 stock/serializers.py:177 +#: company/templates/company/company_base.html:103 stock/serializers.py:179 msgid "Currency" msgstr "货币" @@ -2293,12 +2347,12 @@ msgstr "货币" msgid "Default currency used for this company" msgstr "该公司使用的默认货币" -#: company/models.py:320 company/models.py:535 stock/models.py:474 +#: company/models.py:320 company/models.py:535 stock/models.py:468 #: stock/templates/stock/item_base.html:135 msgid "Base Part" msgstr "" -#: company/models.py:324 company/models.py:539 order/views.py:912 +#: company/models.py:324 company/models.py:539 msgid "Select part" msgstr "选择商品" @@ -2319,7 +2373,7 @@ msgstr "选择制造商" #: company/models.py:342 company/templates/company/manufacturer_part.html:96 #: company/templates/company/supplier_part.html:105 #: templates/js/translated/company.js:530 -#: templates/js/translated/company.js:815 templates/js/translated/order.js:873 +#: templates/js/translated/company.js:815 templates/js/translated/order.js:1038 #: templates/js/translated/part.js:243 templates/js/translated/part.js:832 msgid "MPN" msgstr "MPN" @@ -2349,8 +2403,8 @@ msgstr "参数名称" #: company/models.py:422 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:1857 templates/js/translated/company.js:644 -#: templates/js/translated/part.js:652 templates/js/translated/stock.js:960 +#: stock/models.py:1845 templates/js/translated/company.js:644 +#: templates/js/translated/part.js:652 templates/js/translated/stock.js:1117 msgid "Value" msgstr "数值" @@ -2360,7 +2414,7 @@ msgstr "参数值" #: company/models.py:429 part/models.py:882 part/models.py:2397 #: part/templates/part/part_base.html:288 -#: templates/InvenTree/settings/settings.html:264 +#: templates/InvenTree/settings/settings.html:273 #: templates/js/translated/company.js:650 templates/js/translated/part.js:658 msgid "Units" msgstr "单位" @@ -2374,12 +2428,12 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:545 company/templates/company/company_base.html:78 -#: company/templates/company/supplier_part.html:87 order/models.py:263 +#: 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:398 #: templates/js/translated/company.js:337 -#: templates/js/translated/company.js:771 templates/js/translated/order.js:667 +#: templates/js/translated/company.js:771 templates/js/translated/order.js:823 #: templates/js/translated/part.js:213 templates/js/translated/part.js:800 msgid "Supplier" msgstr "供应商" @@ -2389,7 +2443,7 @@ msgid "Select supplier" msgstr "选择供应商" #: company/models.py:551 company/templates/company/supplier_part.html:91 -#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:860 +#: part/bom.py:220 part/bom.py:248 templates/js/translated/order.js:1025 #: templates/js/translated/part.js:224 templates/js/translated/part.js:818 msgid "SKU" msgstr "SKU" @@ -2425,8 +2479,8 @@ msgid "Minimum charge (e.g. stocking fee)" msgstr "最低收费(例如库存费)" #: company/models.py:582 company/templates/company/supplier_part.html:112 -#: stock/models.py:497 stock/templates/stock/item_base.html:339 -#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1448 +#: stock/models.py:491 stock/templates/stock/item_base.html:339 +#: templates/js/translated/company.js:847 templates/js/translated/stock.js:1612 msgid "Packaging" msgstr "打包" @@ -2457,7 +2511,7 @@ msgid "Company" msgstr "公司" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:121 +#: templates/js/translated/order.js:279 msgid "Create Purchase Order" msgstr "创建采购订单" @@ -2493,11 +2547,12 @@ msgstr "上传新图片" msgid "Download image from URL" msgstr "从 URL 下载图片" -#: company/templates/company/company_base.html:83 order/models.py:567 -#: order/templates/order/sales_order_base.html:115 stock/models.py:515 -#: stock/models.py:516 stock/templates/stock/item_base.html:291 -#: templates/js/translated/company.js:329 templates/js/translated/order.js:1072 -#: templates/js/translated/stock.js:2084 +#: company/templates/company/company_base.html:83 order/models.py:547 +#: order/templates/order/sales_order_base.html:115 stock/models.py:509 +#: stock/models.py:510 stock/serializers.py:610 +#: stock/templates/stock/item_base.html:291 +#: templates/js/translated/company.js:329 templates/js/translated/order.js:1240 +#: templates/js/translated/stock.js:2259 msgid "Customer" msgstr "客户" @@ -2580,7 +2635,7 @@ msgstr "供货商库存" #: order/templates/order/purchase_orders.html:12 #: part/templates/part/detail.html:64 part/templates/part/part_sidebar.html:33 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:203 -#: templates/InvenTree/settings/sidebar.html:44 templates/navbar.html:45 +#: templates/InvenTree/settings/sidebar.html:45 templates/navbar.html:47 #: users/models.py:45 msgid "Purchase Orders" msgstr "采购订单" @@ -2602,7 +2657,7 @@ msgstr "新建采购订单" #: order/templates/order/sales_orders.html:15 #: part/templates/part/detail.html:87 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:223 -#: templates/InvenTree/settings/sidebar.html:46 templates/navbar.html:56 +#: templates/InvenTree/settings/sidebar.html:47 templates/navbar.html:58 #: users/models.py:46 msgid "Sales Orders" msgstr "销售订单" @@ -2618,7 +2673,7 @@ msgid "New Sales Order" msgstr "新建销售订单" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:999 +#: templates/js/translated/build.js:1004 msgid "Assigned Stock" msgstr "" @@ -2644,7 +2699,7 @@ msgstr "供应商列表" #: company/templates/company/manufacturer_part.html:14 company/views.py:55 #: part/templates/part/prices.html:167 templates/InvenTree/search.html:184 -#: templates/navbar.html:44 +#: templates/navbar.html:46 msgid "Manufacturers" msgstr "制造商" @@ -2673,7 +2728,7 @@ msgstr "内部商品" #: company/templates/company/manufacturer_part.html:114 #: company/templates/company/supplier_part.html:15 company/views.py:49 #: part/templates/part/part_sidebar.html:31 part/templates/part/prices.html:163 -#: templates/InvenTree/search.html:194 templates/navbar.html:43 +#: templates/InvenTree/search.html:194 templates/navbar.html:45 msgid "Suppliers" msgstr "供应商" @@ -2687,7 +2742,7 @@ msgstr "删除供应商商品" #: company/templates/company/manufacturer_part.html:254 #: part/templates/part/detail.html:344 part/templates/part/detail.html:372 #: templates/js/translated/company.js:425 templates/js/translated/helpers.js:31 -#: users/models.py:204 +#: users/models.py:206 msgid "Delete" msgstr "删除" @@ -2739,9 +2794,9 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:482 +#: company/templates/company/supplier_part.html:24 stock/models.py:476 #: stock/templates/stock/item_base.html:403 -#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1405 +#: templates/js/translated/company.js:787 templates/js/translated/stock.js:1569 msgid "Supplier Part" msgstr "供应商商品" @@ -2767,7 +2822,7 @@ msgstr "" #: company/templates/company/supplier_part.html:142 #: part/templates/part/detail.html:21 stock/templates/stock/location.html:163 -#: templates/js/translated/stock.js:355 +#: templates/js/translated/stock.js:359 msgid "New Stock Item" msgstr "" @@ -2817,11 +2872,11 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:14 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:156 -#: templates/InvenTree/settings/sidebar.html:40 +#: templates/InvenTree/settings/sidebar.html:41 #: templates/js/translated/bom.js:216 templates/js/translated/part.js:434 #: templates/js/translated/part.js:569 templates/js/translated/part.js:1059 -#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:591 -#: templates/js/translated/stock.js:1244 templates/navbar.html:26 +#: templates/js/translated/part.js:1220 templates/js/translated/stock.js:748 +#: templates/js/translated/stock.js:1401 templates/navbar.html:28 msgid "Stock" msgstr "库存" @@ -2844,7 +2899,7 @@ msgstr "定价" #: stock/templates/stock/location.html:147 #: stock/templates/stock/location.html:159 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:1983 +#: templates/InvenTree/search.html:158 templates/js/translated/stock.js:2158 #: templates/stats.html:93 templates/stats.html:102 users/models.py:43 msgid "Stock Items" msgstr "库存项" @@ -2858,7 +2913,7 @@ msgid "New Manufacturer" msgstr "新建制造商" #: company/views.py:61 templates/InvenTree/search.html:214 -#: templates/navbar.html:55 +#: templates/navbar.html:57 msgid "Customers" msgstr "客户信息" @@ -2960,284 +3015,374 @@ msgstr "查询筛选器 (逗号分隔的键值对列表" msgid "Part query filters (comma-separated value of key=value pairs)" msgstr "商品查询筛选器 (逗号分隔的键值对列表)" -#: order/forms.py:26 order/templates/order/order_base.html:52 +#: order/forms.py:24 order/templates/order/order_base.html:52 msgid "Place order" msgstr "" -#: order/forms.py:37 order/templates/order/order_base.html:60 +#: order/forms.py:35 order/templates/order/order_base.html:60 msgid "Mark order as complete" msgstr "" -#: order/forms.py:48 order/forms.py:59 order/templates/order/order_base.html:47 +#: order/forms.py:46 order/forms.py:57 order/templates/order/order_base.html:47 #: order/templates/order/sales_order_base.html:60 msgid "Cancel order" msgstr "取消订单" -#: order/forms.py:70 -msgid "Ship order" -msgstr "" - -#: order/forms.py:98 -msgid "Enter stock item serial numbers" -msgstr "" - -#: order/forms.py:104 -msgid "Enter quantity of stock items" -msgstr "" - -#: order/models.py:161 +#: order/models.py:122 msgid "Order description" msgstr "" -#: order/models.py:163 +#: order/models.py:124 msgid "Link to external page" msgstr "" -#: order/models.py:171 +#: order/models.py:132 msgid "Created By" msgstr "" -#: order/models.py:178 +#: order/models.py:139 msgid "User or group responsible for this order" msgstr "负责此订单的用户或群组" -#: order/models.py:183 +#: order/models.py:144 msgid "Order notes" msgstr "" -#: order/models.py:250 order/models.py:557 +#: order/models.py:211 order/models.py:537 msgid "Order reference" msgstr "" -#: order/models.py:255 order/models.py:572 +#: order/models.py:216 order/models.py:552 msgid "Purchase order status" msgstr "" -#: order/models.py:264 +#: order/models.py:225 msgid "Company from which the items are being ordered" msgstr "订购该商品的公司" -#: order/models.py:267 order/templates/order/order_base.html:118 -#: templates/js/translated/order.js:676 +#: order/models.py:228 order/templates/order/order_base.html:118 +#: templates/js/translated/order.js:832 msgid "Supplier Reference" msgstr "" -#: order/models.py:267 +#: order/models.py:228 msgid "Supplier order reference code" msgstr "" -#: order/models.py:274 +#: order/models.py:235 msgid "received by" msgstr "" -#: order/models.py:279 +#: order/models.py:240 msgid "Issue Date" msgstr "" -#: order/models.py:280 +#: order/models.py:241 msgid "Date order was issued" msgstr "" -#: order/models.py:285 +#: order/models.py:246 msgid "Target Delivery Date" msgstr "" -#: order/models.py:286 +#: order/models.py:247 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:292 +#: order/models.py:253 msgid "Date order was completed" msgstr "" -#: order/models.py:321 +#: order/models.py:282 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:431 +#: order/models.py:411 msgid "Quantity must be an integer" msgstr "数量必须是整数" -#: order/models.py:435 +#: order/models.py:415 msgid "Quantity must be a positive number" msgstr "数量必须大于0" -#: order/models.py:568 +#: order/models.py:548 msgid "Company to which the items are being sold" msgstr "向其出售该商品的公司" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer Reference " msgstr "" -#: order/models.py:574 +#: order/models.py:554 msgid "Customer order reference code" msgstr "" -#: order/models.py:579 +#: order/models.py:559 msgid "Target date for order completion. Order will be overdue after this date." msgstr "" -#: order/models.py:582 templates/js/translated/order.js:1113 +#: order/models.py:562 order/models.py:1026 +#: templates/js/translated/order.js:1281 templates/js/translated/order.js:1429 msgid "Shipment Date" msgstr "" -#: order/models.py:589 +#: order/models.py:569 msgid "shipped by" msgstr "" -#: order/models.py:633 -msgid "SalesOrder cannot be shipped as it is not currently pending" +#: order/models.py:634 +msgid "Order cannot be completed as no parts have been assigned" msgstr "" -#: order/models.py:730 +#: order/models.py:639 +msgid "Only a pending order can be marked as complete" +msgstr "" + +#: order/models.py:643 +msgid "Order cannot be completed as there are incomplete shipments" +msgstr "" + +#: order/models.py:647 +msgid "Order cannot be completed as there are incomplete line items" +msgstr "" + +#: order/models.py:795 msgid "Item quantity" msgstr "" -#: order/models.py:736 +#: order/models.py:801 msgid "Line item reference" msgstr "" -#: order/models.py:738 +#: order/models.py:803 msgid "Line item notes" msgstr "" -#: order/models.py:768 order/models.py:856 -#: templates/js/translated/order.js:1165 +#: order/models.py:833 order/models.py:924 order/models.py:1020 +#: templates/js/translated/order.js:1820 msgid "Order" msgstr "" -#: order/models.py:769 order/templates/order/order_base.html:9 +#: order/models.py:834 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:353 -#: templates/js/translated/order.js:638 templates/js/translated/part.js:775 -#: templates/js/translated/stock.js:1382 templates/js/translated/stock.js:2065 +#: templates/js/translated/order.js:801 templates/js/translated/part.js:775 +#: templates/js/translated/stock.js:1546 templates/js/translated/stock.js:2240 msgid "Purchase Order" msgstr "" -#: order/models.py:790 +#: order/models.py:855 msgid "Supplier part" msgstr "供应商商品" -#: order/models.py:797 order/templates/order/order_base.html:151 -#: order/templates/order/sales_order_base.html:155 -#: templates/js/translated/order.js:429 templates/js/translated/order.js:953 +#: order/models.py:862 order/templates/order/order_base.html:163 +#: templates/js/translated/order.js:589 templates/js/translated/order.js:1118 #: templates/js/translated/part.js:847 templates/js/translated/part.js:873 +#: templates/js/translated/table_filters.js:317 msgid "Received" msgstr "" -#: order/models.py:798 +#: order/models.py:863 msgid "Number of items received" msgstr "" -#: order/models.py:805 part/templates/part/prices.html:176 stock/models.py:609 -#: stock/serializers.py:168 stock/templates/stock/item_base.html:360 -#: templates/js/translated/stock.js:1436 +#: order/models.py:870 part/templates/part/prices.html:176 stock/models.py:603 +#: stock/serializers.py:170 stock/templates/stock/item_base.html:360 +#: templates/js/translated/stock.js:1600 msgid "Purchase Price" msgstr "采购价格" -#: order/models.py:806 +#: order/models.py:871 msgid "Unit purchase price" msgstr "" -#: order/models.py:814 +#: order/models.py:879 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:866 part/templates/part/part_pricing.html:112 +#: order/models.py:934 part/templates/part/part_pricing.html:112 #: part/templates/part/prices.html:116 part/templates/part/prices.html:284 msgid "Sale Price" msgstr "销售价格" -#: order/models.py:867 +#: order/models.py:935 msgid "Unit sale price" msgstr "" -#: order/models.py:946 order/models.py:948 +#: order/models.py:940 +msgid "Shipped quantity" +msgstr "" + +#: order/models.py:1027 +msgid "Date of shipment" +msgstr "" + +#: order/models.py:1034 +msgid "Checked By" +msgstr "" + +#: order/models.py:1035 +msgid "User who checked this shipment" +msgstr "" + +#: order/models.py:1043 +msgid "Shipment number" +msgstr "" + +#: order/models.py:1050 +msgid "Shipment notes" +msgstr "" + +#: order/models.py:1057 +msgid "Tracking Number" +msgstr "" + +#: order/models.py:1058 +msgid "Shipment tracking information" +msgstr "" + +#: order/models.py:1068 +msgid "Shipment has already been sent" +msgstr "" + +#: order/models.py:1071 +msgid "Shipment has no allocated stock items" +msgstr "" + +#: order/models.py:1147 order/models.py:1149 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:952 +#: order/models.py:1153 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:954 +#: order/models.py:1155 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:957 +#: order/models.py:1158 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:961 +#: order/models.py:1162 msgid "StockItem is over-allocated" msgstr "" -#: order/models.py:967 +#: order/models.py:1168 order/serializers.py:734 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:975 +#: order/models.py:1171 +msgid "Sales order does not match shipment" +msgstr "" + +#: order/models.py:1172 +msgid "Shipment does not match sales order" +msgstr "" + +#: order/models.py:1180 msgid "Line" msgstr "" -#: order/models.py:987 +#: order/models.py:1188 order/serializers.py:825 order/serializers.py:953 +#: templates/js/translated/model_renderers.js:251 +msgid "Shipment" +msgstr "" + +#: order/models.py:1189 +msgid "Sales order shipment reference" +msgstr "" + +#: order/models.py:1201 msgid "Item" msgstr "" -#: order/models.py:988 +#: order/models.py:1202 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:991 +#: order/models.py:1205 msgid "Enter stock allocation quantity" msgstr "" -#: order/serializers.py:175 +#: order/serializers.py:173 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:213 +#: order/serializers.py:211 order/serializers.py:790 msgid "Line Item" msgstr "" -#: order/serializers.py:219 +#: order/serializers.py:217 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:229 order/serializers.py:297 +#: order/serializers.py:227 order/serializers.py:295 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:253 +#: order/serializers.py:251 msgid "Barcode Hash" msgstr "" -#: order/serializers.py:254 +#: order/serializers.py:252 msgid "Unique identifier field" msgstr "" -#: order/serializers.py:271 +#: order/serializers.py:269 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:309 +#: order/serializers.py:307 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:326 +#: order/serializers.py:324 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:337 +#: order/serializers.py:335 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:578 +#: order/serializers.py:581 msgid "Sale price currency" msgstr "" +#: order/serializers.py:649 +msgid "No shipment details provided" +msgstr "" + +#: order/serializers.py:699 order/serializers.py:802 +msgid "Line item is not associated with this order" +msgstr "" + +#: order/serializers.py:721 +msgid "Quantity must be positive" +msgstr "" + +#: order/serializers.py:815 +msgid "Enter serial numbers to allocate" +msgstr "" + +#: order/serializers.py:839 order/serializers.py:964 +msgid "Shipment has already been shipped" +msgstr "" + +#: order/serializers.py:842 order/serializers.py:967 +msgid "Shipment is not associated with this order" +msgstr "" + +#: order/serializers.py:894 +msgid "No match found for the following serial numbers" +msgstr "" + +#: order/serializers.py:904 +msgid "The following serial numbers are already allocated" +msgstr "" + #: order/templates/order/delete_attachment.html:5 #: stock/templates/stock/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" @@ -3271,7 +3416,8 @@ msgstr "" msgid "Receive Items" msgstr "" -#: order/templates/order/order_base.html:62 order/views.py:185 +#: order/templates/order/order_base.html:62 +#: order/templates/order/sales_order_base.html:67 order/views.py:181 msgid "Complete Order" msgstr "" @@ -3290,12 +3436,23 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:137 +#: order/templates/order/order_base.html:124 +#: order/templates/order/sales_order_base.html:128 +msgid "Completed Line Items" +msgstr "" + +#: 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 "" + +#: order/templates/order/order_base.html:149 #: report/templates/report/inventree_build_order_base.html:122 msgid "Issued" msgstr "" -#: order/templates/order/order_base.html:207 +#: order/templates/order/order_base.html:219 msgid "Edit Purchase Order" msgstr "" @@ -3371,8 +3528,9 @@ 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:240 templates/js/translated/build.js:1251 -#: templates/js/translated/order.js:377 +#: templates/js/translated/build.js:245 templates/js/translated/build.js:1256 +#: templates/js/translated/order.js:537 templates/js/translated/order.js:1488 +#: templates/js/translated/stock.js:592 msgid "Remove row" msgstr "移除行" @@ -3453,7 +3611,8 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/translated/order.js:694 templates/js/translated/order.js:1118 +#: templates/js/translated/order.js:859 templates/js/translated/order.js:1286 +#: templates/js/translated/order.js:1416 msgid "Items" msgstr "" @@ -3489,7 +3648,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:27 #: order/templates/order/purchase_order_detail.html:181 #: order/templates/order/sales_order_detail.html:23 -#: order/templates/order/sales_order_detail.html:157 +#: order/templates/order/sales_order_detail.html:244 msgid "Add Line Item" msgstr "" @@ -3502,7 +3661,7 @@ msgid "Received Items" msgstr "" #: order/templates/order/purchase_order_detail.html:76 -#: order/templates/order/sales_order_detail.html:68 +#: order/templates/order/sales_order_detail.html:123 msgid "Order Notes" msgstr "" @@ -3520,8 +3679,8 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:66 -#: order/templates/order/sales_order_base.html:67 order/views.py:222 -msgid "Ship Order" +#: order/templates/order/sales_order_base.html:229 +msgid "Complete Sales Order" msgstr "" #: order/templates/order/sales_order_base.html:102 @@ -3529,16 +3688,21 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:122 -#: templates/js/translated/order.js:1085 +#: templates/js/translated/order.js:1253 msgid "Customer Reference" msgstr "" -#: order/templates/order/sales_order_base.html:195 +#: order/templates/order/sales_order_base.html:140 +#: order/templates/order/sales_order_detail.html:78 +#: order/templates/order/so_sidebar.html:11 +msgid "Completed Shipments" +msgstr "" + +#: order/templates/order/sales_order_base.html:215 msgid "Edit Sales Order" msgstr "" #: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 #: part/templates/part/bom_duplicate.html:12 #: stock/templates/stock/stockitem_convert.html:13 msgid "Warning" @@ -3552,146 +3716,100 @@ msgstr "" msgid "Sales Order Items" msgstr "" -#: order/templates/order/sales_order_ship.html:10 -msgid "This order has not been fully allocated. If the order is marked as shipped, it can no longer be adjusted." +#: order/templates/order/sales_order_detail.html:44 +#: order/templates/order/so_sidebar.html:8 +msgid "Pending Shipments" msgstr "" -#: order/templates/order/sales_order_ship.html:12 -msgid "Ensure that the order allocation is correct before shipping the order." +#: order/templates/order/sales_order_detail.html:48 +#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1188 +msgid "Actions" msgstr "" -#: order/templates/order/sales_order_ship.html:18 -msgid "Some line items in this order have been over-allocated" +#: order/templates/order/sales_order_detail.html:57 +msgid "New Shipment" msgstr "" -#: order/templates/order/sales_order_ship.html:20 -msgid "Ensure that this is correct before shipping the order." -msgstr "" - -#: order/templates/order/sales_order_ship.html:27 -msgid "Shipping this order means that the order will no longer be editable." -msgstr "" - -#: order/templates/order/so_allocate_by_serial.html:9 -msgid "Allocate stock items by serial number" -msgstr "" - -#: order/views.py:103 +#: order/views.py:99 msgid "Cancel Order" msgstr "取消订单" -#: order/views.py:112 order/views.py:138 +#: order/views.py:108 order/views.py:134 msgid "Confirm order cancellation" msgstr "确认取消订单" -#: order/views.py:115 order/views.py:141 +#: order/views.py:111 order/views.py:137 msgid "Order cannot be cancelled" msgstr "无法取消订单" -#: order/views.py:129 +#: order/views.py:125 msgid "Cancel sales order" msgstr "取消销售订单" -#: order/views.py:155 +#: order/views.py:151 msgid "Issue Order" msgstr "" -#: order/views.py:164 +#: order/views.py:160 msgid "Confirm order placement" msgstr "" -#: order/views.py:174 +#: order/views.py:170 msgid "Purchase order issued" msgstr "" -#: order/views.py:201 +#: order/views.py:197 msgid "Confirm order completion" msgstr "" -#: order/views.py:212 +#: order/views.py:208 msgid "Purchase order completed" msgstr "" -#: order/views.py:238 -msgid "Confirm order shipment" -msgstr "" - -#: order/views.py:244 -msgid "Could not ship order" -msgstr "" - -#: order/views.py:291 +#: order/views.py:245 msgid "Match Supplier Parts" msgstr "" -#: order/views.py:535 +#: order/views.py:489 msgid "Update prices" msgstr "" -#: order/views.py:793 +#: order/views.py:747 #, python-brace-format msgid "Ordered {n} parts" msgstr "" -#: order/views.py:846 -msgid "Allocate Serial Numbers" -msgstr "" - -#: order/views.py:891 -#, python-brace-format -msgid "Allocated {n} items" -msgstr "" - -#: order/views.py:907 -msgid "Select line item" -msgstr "" - -#: order/views.py:938 -#, python-brace-format -msgid "No matching item for serial {serial}" -msgstr "" - -#: order/views.py:948 -#, python-brace-format -msgid "{serial} is not in stock" -msgstr "" - -#: order/views.py:956 -#, python-brace-format -msgid "{serial} already allocated to an order" -msgstr "" - -#: order/views.py:1072 +#: order/views.py:858 msgid "Sales order not found" msgstr "" -#: order/views.py:1078 +#: order/views.py:864 msgid "Price not found" msgstr "" -#: order/views.py:1081 +#: order/views.py:867 #, python-brace-format msgid "Updated {part} unit-price to {price}" msgstr "" -#: order/views.py:1086 +#: order/views.py:872 #, python-brace-format msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:758 +#: part/api.py:760 msgid "Must be greater than zero" msgstr "必须大于0" -#: part/api.py:762 +#: part/api.py:764 msgid "Must be a valid quantity" msgstr "必须是有效的数量" -#: part/api.py:777 +#: part/api.py:779 msgid "Specify location for initial part stock" msgstr "指定初始初始商品仓储地点" -#: part/api.py:808 part/api.py:812 part/api.py:827 part/api.py:831 +#: part/api.py:810 part/api.py:814 part/api.py:829 part/api.py:833 msgid "This field is required" msgstr "此字段为必填" @@ -3828,8 +3946,8 @@ msgstr "商品类别" #: part/templates/part/category.html:149 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:88 -#: templates/InvenTree/settings/sidebar.html:36 -#: templates/js/translated/part.js:1597 templates/navbar.html:19 +#: templates/InvenTree/settings/sidebar.html:37 +#: templates/js/translated/part.js:1597 templates/navbar.html:21 #: templates/stats.html:80 templates/stats.html:89 users/models.py:41 msgid "Parts" msgstr "商品" @@ -3895,7 +4013,7 @@ msgstr "提高搜索结果可见性的关键字" #: part/models.py:778 part/models.py:2223 part/models.py:2472 #: part/templates/part/part_base.html:265 #: part/templates/part/set_category.html:15 -#: templates/InvenTree/settings/settings.html:163 +#: templates/InvenTree/settings/settings.html:172 #: templates/js/translated/part.js:1202 msgid "Category" msgstr "类别" @@ -3906,7 +4024,7 @@ msgstr "商品类别" #: part/models.py:784 part/templates/part/part_base.html:274 #: templates/js/translated/part.js:557 templates/js/translated/part.js:1155 -#: templates/js/translated/stock.js:1216 +#: templates/js/translated/stock.js:1373 msgid "IPN" msgstr "" @@ -3975,10 +4093,11 @@ msgstr "" msgid "Can this part be sold to customers?" msgstr "此商品可以销售给客户吗?" -#: part/models.py:915 templates/js/translated/table_filters.js:34 +#: part/models.py:915 plugin/models.py:45 +#: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:96 -#: templates/js/translated/table_filters.js:290 -#: templates/js/translated/table_filters.js:368 +#: templates/js/translated/table_filters.js:295 +#: templates/js/translated/table_filters.js:399 msgid "Active" msgstr "" @@ -4027,7 +4146,7 @@ msgid "Test with this name already exists for this part" msgstr "" #: part/models.py:2310 templates/js/translated/part.js:1648 -#: templates/js/translated/stock.js:940 +#: templates/js/translated/stock.js:1097 msgid "Test Name" msgstr "" @@ -4044,7 +4163,7 @@ msgid "Enter description for this test" msgstr "" #: part/models.py:2322 templates/js/translated/part.js:1657 -#: templates/js/translated/table_filters.js:276 +#: templates/js/translated/table_filters.js:281 msgid "Required" msgstr "" @@ -4086,7 +4205,7 @@ msgid "Parameter Units" msgstr "" #: part/models.py:2429 part/models.py:2478 part/models.py:2479 -#: templates/InvenTree/settings/settings.html:158 +#: templates/InvenTree/settings/settings.html:167 msgid "Parameter Template" msgstr "参数模板" @@ -4098,7 +4217,7 @@ msgstr "" msgid "Parameter Value" msgstr "" -#: part/models.py:2483 templates/InvenTree/settings/settings.html:167 +#: part/models.py:2483 templates/InvenTree/settings/settings.html:176 msgid "Default Value" msgstr "默认值" @@ -4175,7 +4294,7 @@ msgstr "" msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2686 stock/models.py:361 +#: part/models.py:2686 stock/models.py:355 msgid "Quantity must be integer value for trackable parts" msgstr "" @@ -4724,8 +4843,8 @@ msgstr "" msgid "This part is a variant of %(link)s" msgstr "" -#: part/templates/part/part_base.html:190 templates/js/translated/order.js:1545 -#: templates/js/translated/table_filters.js:188 +#: part/templates/part/part_base.html:190 templates/js/translated/order.js:2217 +#: templates/js/translated/table_filters.js:193 msgid "In Stock" msgstr "" @@ -5099,6 +5218,78 @@ msgstr "" msgid "Delete Internal Price Break" msgstr "" +#: plugin/integration.py:116 +msgid "No author found" +msgstr "" + +#: plugin/integration.py:128 +msgid "No date found" +msgstr "" + +#: plugin/models.py:25 +msgid "Plugin Configuration" +msgstr "" + +#: plugin/models.py:26 +msgid "Plugin Configurations" +msgstr "" + +#: plugin/models.py:31 +msgid "Key" +msgstr "" + +#: plugin/models.py:32 +msgid "Key of plugin" +msgstr "" + +#: plugin/models.py:40 +msgid "PluginName of the plugin" +msgstr "" + +#: plugin/models.py:46 +msgid "Is the plugin active" +msgstr "" + +#: plugin/samples/integration/sample.py:39 +msgid "Enable PO" +msgstr "" + +#: plugin/samples/integration/sample.py:40 +msgid "Enable PO functionality in InvenTree interface" +msgstr "" + +#: plugin/serializers.py:46 +msgid "Source URL" +msgstr "" + +#: plugin/serializers.py:47 +msgid "Source for the package - this can be a custom registry or a VCS path" +msgstr "" + +#: plugin/serializers.py:52 +msgid "Package Name" +msgstr "" + +#: plugin/serializers.py:53 +msgid "Name for the Plugin Package - can also contain a version indicator" +msgstr "" + +#: plugin/serializers.py:56 +msgid "Confirm plugin installation" +msgstr "" + +#: plugin/serializers.py:57 +msgid "This will install this plugin now into the current instance. The instance will go into maintenance." +msgstr "" + +#: plugin/serializers.py:72 +msgid "Installation not confirmed" +msgstr "" + +#: plugin/serializers.py:74 +msgid "Either packagenmae of url must be provided" +msgstr "" + #: report/api.py:234 report/api.py:278 #, python-brace-format msgid "Template file '{filename}' is missing or does not exist" @@ -5197,12 +5388,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:520 stock/templates/stock/item_base.html:149 -#: templates/js/translated/build.js:233 templates/js/translated/build.js:637 -#: templates/js/translated/build.js:1013 +#: stock/models.py:514 stock/templates/stock/item_base.html:149 +#: templates/js/translated/build.js:238 templates/js/translated/build.js:642 +#: templates/js/translated/build.js:1018 #: templates/js/translated/model_renderers.js:95 -#: templates/js/translated/order.js:1287 templates/js/translated/order.js:1376 -#: templates/js/translated/stock.js:410 +#: templates/js/translated/order.js:99 templates/js/translated/order.js:1945 +#: templates/js/translated/order.js:2034 templates/js/translated/stock.js:414 msgid "Serial Number" msgstr "序列号" @@ -5211,17 +5402,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:1845 +#: stock/models.py:1833 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:1851 +#: stock/models.py:1839 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/js/translated/order.js:684 templates/js/translated/stock.js:1999 +#: templates/InvenTree/settings/plugin.html:49 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:849 templates/js/translated/stock.js:2174 msgid "Date" msgstr "" @@ -5239,302 +5432,318 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:2259 +#: templates/js/translated/stock.js:577 templates/js/translated/stock.js:2434 msgid "Serial" msgstr "" -#: stock/api.py:422 +#: stock/api.py:446 msgid "Quantity is required" msgstr "" -#: stock/forms.py:91 stock/forms.py:265 stock/models.py:577 +#: stock/forms.py:77 stock/forms.py:251 stock/models.py:571 #: stock/templates/stock/item_base.html:186 -#: templates/js/translated/stock.js:1358 +#: templates/js/translated/stock.js:1522 msgid "Expiry Date" msgstr "" -#: stock/forms.py:92 stock/forms.py:266 +#: stock/forms.py:78 stock/forms.py:252 msgid "Expiration date for this stock item" msgstr "" -#: stock/forms.py:95 +#: stock/forms.py:81 msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:150 +#: stock/forms.py:136 msgid "Destination for serialized stock (by default, will remain in current location)" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Serial numbers" msgstr "" -#: stock/forms.py:152 +#: stock/forms.py:138 msgid "Unique serial numbers (must match quantity)" msgstr "" -#: stock/forms.py:154 stock/forms.py:238 +#: stock/forms.py:140 stock/forms.py:224 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:194 +#: stock/forms.py:180 msgid "Stock item to install" msgstr "" -#: stock/forms.py:224 +#: stock/forms.py:210 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:236 +#: stock/forms.py:222 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:240 +#: stock/forms.py:226 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/models.py:60 stock/models.py:614 +#: stock/models.py:60 stock/models.py:608 #: stock/templates/stock/item_base.html:417 msgid "Owner" msgstr "" -#: stock/models.py:61 stock/models.py:615 +#: stock/models.py:61 stock/models.py:609 msgid "Select Owner" msgstr "" -#: stock/models.py:342 +#: stock/models.py:336 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:378 +#: stock/models.py:372 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "商品类型 ('{pf}') 必须是 {pe}" -#: stock/models.py:388 stock/models.py:397 +#: stock/models.py:382 stock/models.py:391 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:389 +#: stock/models.py:383 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:411 +#: stock/models.py:405 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:417 +#: stock/models.py:411 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:424 +#: stock/models.py:418 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:466 +#: stock/models.py:460 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:475 +#: stock/models.py:469 msgid "Base part" msgstr "" -#: stock/models.py:483 +#: stock/models.py:477 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:488 stock/templates/stock/location.html:12 +#: stock/models.py:482 stock/templates/stock/location.html:12 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "仓储地点" -#: stock/models.py:491 +#: stock/models.py:485 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:498 +#: stock/models.py:492 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:503 stock/templates/stock/item_base.html:299 +#: stock/models.py:497 stock/templates/stock/item_base.html:299 msgid "Installed In" msgstr "" -#: stock/models.py:506 +#: stock/models.py:500 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:522 +#: stock/models.py:516 msgid "Serial number for this item" msgstr "" -#: stock/models.py:536 +#: stock/models.py:530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:540 +#: stock/models.py:534 msgid "Stock Quantity" msgstr "" -#: stock/models.py:549 +#: stock/models.py:543 msgid "Source Build" msgstr "" -#: stock/models.py:551 +#: stock/models.py:545 msgid "Build for this stock item" msgstr "" -#: stock/models.py:562 +#: stock/models.py:556 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:565 +#: stock/models.py:559 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:571 +#: stock/models.py:565 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:578 +#: stock/models.py:572 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete on deplete" msgstr "" -#: stock/models.py:591 +#: stock/models.py:585 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:601 stock/templates/stock/item.html:111 +#: stock/models.py:595 stock/templates/stock/item.html:111 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:610 +#: stock/models.py:604 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:620 -msgid "Scheduled for deletion" -msgstr "" - -#: stock/models.py:621 -msgid "This StockItem will be deleted by the background worker" -msgstr "" - -#: stock/models.py:1084 +#: stock/models.py:1072 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1090 +#: stock/models.py:1078 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1096 +#: stock/models.py:1084 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1099 +#: stock/models.py:1087 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1102 +#: stock/models.py:1090 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1109 +#: stock/models.py:1097 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1267 +#: stock/models.py:1255 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1765 +#: stock/models.py:1753 msgid "Entry notes" msgstr "" -#: stock/models.py:1822 +#: stock/models.py:1810 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1828 +#: stock/models.py:1816 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1834 msgid "Test name" msgstr "" -#: stock/models.py:1852 templates/js/translated/table_filters.js:266 +#: stock/models.py:1840 templates/js/translated/table_filters.js:271 msgid "Test result" msgstr "" -#: stock/models.py:1858 +#: stock/models.py:1846 msgid "Test output value" msgstr "" -#: stock/models.py:1865 +#: stock/models.py:1853 msgid "Test result attachment" msgstr "" -#: stock/models.py:1871 +#: stock/models.py:1859 msgid "Test notes" msgstr "" -#: stock/serializers.py:171 +#: stock/serializers.py:173 msgid "Purchase price of this stock item" msgstr "" -#: stock/serializers.py:178 +#: stock/serializers.py:180 msgid "Purchase currency of this stock item" msgstr "" -#: stock/serializers.py:292 +#: stock/serializers.py:294 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:307 +#: stock/serializers.py:309 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:313 +#: stock/serializers.py:315 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:324 stock/serializers.py:691 +#: stock/serializers.py:326 stock/serializers.py:814 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:331 +#: stock/serializers.py:333 msgid "Optional note field" msgstr "" -#: stock/serializers.py:344 +#: stock/serializers.py:346 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:561 +#: stock/serializers.py:573 +msgid "Part must be salable" +msgstr "" + +#: stock/serializers.py:577 +msgid "Item is allocated to a sales order" +msgstr "" + +#: stock/serializers.py:581 +msgid "Item is allocated to a build order" +msgstr "" + +#: stock/serializers.py:611 +msgid "Customer to assign stock items" +msgstr "" + +#: stock/serializers.py:617 +msgid "Selected company is not a customer" +msgstr "" + +#: stock/serializers.py:625 +msgid "Stock assignment notes" +msgstr "" + +#: stock/serializers.py:635 stock/serializers.py:722 +msgid "A list of stock items must be provided" +msgstr "" + +#: stock/serializers.py:684 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:589 +#: stock/serializers.py:712 msgid "Stock transaction notes" msgstr "" -#: stock/serializers.py:599 -msgid "A list of stock items must be provided" -msgstr "" - #: stock/templates/stock/item.html:18 msgid "Stock Tracking Information" msgstr "" @@ -5572,7 +5781,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:137 stock/views.py:515 +#: stock/templates/stock/item.html:137 stock/views.py:482 msgid "Install Stock Item" msgstr "" @@ -5632,7 +5841,7 @@ msgstr "" msgid "Transfer stock" msgstr "" -#: stock/templates/stock/item_base.html:85 +#: stock/templates/stock/item_base.html:85 templates/stock_table.html:53 msgid "Assign to customer" msgstr "" @@ -5694,7 +5903,7 @@ msgid "This StockItem expired on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:190 -#: templates/js/translated/table_filters.js:247 +#: templates/js/translated/table_filters.js:252 msgid "Expired" msgstr "" @@ -5704,12 +5913,12 @@ msgid "This StockItem expires on %(item.expiry_date)s" msgstr "" #: stock/templates/stock/item_base.html:192 -#: templates/js/translated/table_filters.js:253 +#: templates/js/translated/table_filters.js:258 msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/stock.js:1371 +#: templates/js/translated/stock.js:1535 msgid "Last Updated" msgstr "" @@ -5738,13 +5947,11 @@ msgid "This stock item has not passed all required tests" msgstr "" #: stock/templates/stock/item_base.html:255 -#, python-format -msgid "This stock item is allocated to Sales Order %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Sales Order" msgstr "" #: stock/templates/stock/item_base.html:263 -#, python-format -msgid "This stock item is allocated to Build %(link)s (Quantity: %(qty)s)" +msgid "This stock item is allocated to Build Order" msgstr "" #: stock/templates/stock/item_base.html:269 @@ -5760,7 +5967,7 @@ msgid "This stock item will be automatically deleted when all stock is depleted. msgstr "" #: stock/templates/stock/item_base.html:318 -#: templates/js/translated/build.js:1035 +#: templates/js/translated/build.js:1040 msgid "No location set" msgstr "未设置仓储地点" @@ -5910,7 +6117,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:912 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:879 msgid "Convert Stock Item" msgstr "" @@ -5935,8 +6142,7 @@ msgstr "" msgid "Edit Stock Location" msgstr "编辑仓储地点" -#: stock/views.py:269 stock/views.py:891 stock/views.py:1017 -#: stock/views.py:1299 +#: stock/views.py:269 stock/views.py:858 stock/views.py:984 stock/views.py:1266 msgid "Owner is required (ownership control is enabled)" msgstr "" @@ -5945,86 +6151,78 @@ msgid "Stock Location QR code" msgstr "仓储地点二维码" #: stock/views.py:303 -msgid "Assign to Customer" -msgstr "" - -#: stock/views.py:312 -msgid "Customer must be specified" -msgstr "" - -#: stock/views.py:336 msgid "Return to Stock" msgstr "" -#: stock/views.py:345 +#: stock/views.py:312 msgid "Specify a valid location" msgstr "指定一个有效仓储地点" -#: stock/views.py:356 +#: stock/views.py:323 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:367 +#: stock/views.py:334 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:384 +#: stock/views.py:351 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:489 +#: stock/views.py:456 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:663 +#: stock/views.py:630 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:760 templates/js/translated/stock.js:730 +#: stock/views.py:727 templates/js/translated/stock.js:887 msgid "Confirm stock adjustment" msgstr "" -#: stock/views.py:771 +#: stock/views.py:738 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:793 templates/js/translated/stock.js:319 +#: stock/views.py:760 templates/js/translated/stock.js:323 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:943 +#: stock/views.py:910 msgid "Create new Stock Location" msgstr "新建仓储地点" -#: stock/views.py:1044 +#: stock/views.py:1011 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1186 templates/js/translated/stock.js:299 +#: stock/views.py:1153 templates/js/translated/stock.js:303 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1268 +#: stock/views.py:1235 msgid "Quantity cannot be negative" msgstr "" -#: stock/views.py:1368 +#: stock/views.py:1335 msgid "Delete Stock Location" msgstr "删除仓储地点" -#: stock/views.py:1381 +#: stock/views.py:1348 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1392 +#: stock/views.py:1359 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1399 +#: stock/views.py:1366 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1408 +#: stock/views.py:1375 msgid "Add Stock Tracking Entry" msgstr "" @@ -6044,6 +6242,14 @@ msgstr "" msgid "The requested page does not exist" msgstr "" +#: templates/503.html:10 templates/503.html:35 +msgid "Site is in Maintenance" +msgstr "" + +#: templates/503.html:41 +msgid "The site is currently in maintenance and should be up again soon!" +msgstr "" + #: templates/InvenTree/index.html:7 msgid "Index" msgstr "" @@ -6153,7 +6359,7 @@ msgid "Server Settings" msgstr "" #: templates/InvenTree/settings/login.html:9 -#: templates/InvenTree/settings/sidebar.html:28 +#: templates/InvenTree/settings/sidebar.html:29 msgid "Login Settings" msgstr "" @@ -6161,6 +6367,24 @@ msgstr "" msgid "Signup" msgstr "" +#: templates/InvenTree/settings/mixins/settings.html:4 +#: templates/InvenTree/settings/settings.html:12 templates/navbar.html:118 +msgid "Settings" +msgstr "设置" + +#: templates/InvenTree/settings/mixins/urls.html:4 +msgid "URLs" +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:6 +#, python-format +msgid "The Base-URL for this plugin is %(base)s." +msgstr "" + +#: templates/InvenTree/settings/mixins/urls.html:21 +msgid "open in new tab" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "商品设置" @@ -6177,6 +6401,126 @@ msgstr "导入商品" msgid "Part Parameter Templates" msgstr "商品参数模板" +#: templates/InvenTree/settings/plugin.html:10 +msgid "Plugin Settings" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:16 +msgid "Changing the settings below require you to immediatly restart InvenTree. Do not change this while under active usage." +msgstr "" + +#: templates/InvenTree/settings/plugin.html:32 +msgid "Plugin list" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:37 +#: templates/js/translated/plugin.js:15 +msgid "Install Plugin" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:46 templates/navbar.html:111 +#: users/models.py:39 +msgid "Admin" +msgstr "管理员" + +#: templates/InvenTree/settings/plugin.html:48 +#: templates/InvenTree/settings/plugin_settings.html:28 +msgid "Author" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin_settings.html:43 +msgid "Version" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:73 +#, python-format +msgid "has %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:91 +msgid "Inactive plugins" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:114 +msgid "Plugin Error Stack" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:123 +msgid "Stage" +msgstr "" + +#: templates/InvenTree/settings/plugin.html:125 +msgid "Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:10 +#, python-format +msgid "Plugin details for %(name)s" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:17 +msgid "Plugin information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:48 +msgid "no version information supplied" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:62 +msgid "License" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:70 +msgid "The code information is pulled from the latest git commit for this plugin. It might not reflect official version numbers or information but the actual code running." +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:74 +msgid "Package information" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:80 +msgid "Installation method" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:83 +msgid "This plugin was installed as a package" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:85 +msgid "This plugin was found in a local InvenTree path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:91 +msgid "Installation path" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:97 +msgid "Commit Author" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:101 +#: templates/about.html:47 +msgid "Commit Date" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:105 +#: templates/about.html:40 +msgid "Commit Hash" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:109 +msgid "Commit Message" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:114 +msgid "Sign Status" +msgstr "" + +#: templates/InvenTree/settings/plugin_settings.html:119 +msgid "Sign Key" +msgstr "" + #: templates/InvenTree/settings/po.html:7 msgid "Purchase Order Settings" msgstr "采购订单设置" @@ -6194,86 +6538,82 @@ msgstr "未设置值" msgid "Edit setting" msgstr "编辑设置" -#: templates/InvenTree/settings/settings.html:11 templates/navbar.html:93 -msgid "Settings" -msgstr "设置" - -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:65 +#: templates/InvenTree/settings/settings.html:74 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:148 +#: templates/InvenTree/settings/settings.html:157 msgid "No category parameter templates found" msgstr "未找到类别参数模板" -#: templates/InvenTree/settings/settings.html:170 -#: templates/InvenTree/settings/settings.html:269 +#: templates/InvenTree/settings/settings.html:179 +#: templates/InvenTree/settings/settings.html:278 msgid "Edit Template" msgstr "编辑模板" -#: templates/InvenTree/settings/settings.html:171 -#: templates/InvenTree/settings/settings.html:270 +#: templates/InvenTree/settings/settings.html:180 +#: templates/InvenTree/settings/settings.html:279 msgid "Delete Template" msgstr "删除模板" -#: templates/InvenTree/settings/settings.html:249 +#: templates/InvenTree/settings/settings.html:258 msgid "No part parameter templates found" msgstr "未找到商品参数模板" -#: templates/InvenTree/settings/settings.html:253 +#: templates/InvenTree/settings/settings.html:262 msgid "ID" msgstr "" -#: templates/InvenTree/settings/sidebar.html:5 +#: templates/InvenTree/settings/sidebar.html:6 #: templates/InvenTree/settings/user_settings.html:9 msgid "User Settings" msgstr "用户设置" -#: templates/InvenTree/settings/sidebar.html:8 +#: templates/InvenTree/settings/sidebar.html:9 #: templates/InvenTree/settings/user.html:12 msgid "Account Settings" msgstr "帐户设置" -#: templates/InvenTree/settings/sidebar.html:10 +#: templates/InvenTree/settings/sidebar.html:11 #: templates/InvenTree/settings/user_display.html:9 msgid "Display Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:12 +#: templates/InvenTree/settings/sidebar.html:13 msgid "Home Page" msgstr "" -#: templates/InvenTree/settings/sidebar.html:14 +#: templates/InvenTree/settings/sidebar.html:15 #: templates/InvenTree/settings/user_search.html:9 msgid "Search Settings" msgstr "搜索设置" -#: templates/InvenTree/settings/sidebar.html:16 +#: templates/InvenTree/settings/sidebar.html:17 msgid "Label Printing" msgstr "" -#: templates/InvenTree/settings/sidebar.html:18 -#: templates/InvenTree/settings/sidebar.html:34 +#: templates/InvenTree/settings/sidebar.html:19 +#: templates/InvenTree/settings/sidebar.html:35 msgid "Reporting" msgstr "" -#: templates/InvenTree/settings/sidebar.html:23 +#: templates/InvenTree/settings/sidebar.html:24 msgid "Global Settings" msgstr "" -#: templates/InvenTree/settings/sidebar.html:26 +#: templates/InvenTree/settings/sidebar.html:27 msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:32 +#: templates/InvenTree/settings/sidebar.html:33 msgid "Currencies" msgstr "" -#: templates/InvenTree/settings/sidebar.html:38 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Categories" msgstr "" @@ -6491,8 +6831,8 @@ msgstr "" #: templates/about.html:11 templates/about.html:105 #: templates/js/translated/bom.js:283 templates/js/translated/modals.js:53 -#: templates/js/translated/modals.js:567 templates/js/translated/modals.js:661 -#: templates/js/translated/modals.js:964 templates/modals.html:15 +#: templates/js/translated/modals.js:568 templates/js/translated/modals.js:662 +#: templates/js/translated/modals.js:965 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -6513,14 +6853,6 @@ msgstr "" msgid "Update Available" msgstr "" -#: templates/about.html:40 -msgid "Commit Hash" -msgstr "" - -#: templates/about.html:47 -msgid "Commit Date" -msgstr "" - #: templates/about.html:53 msgid "InvenTree Documentation" msgstr "" @@ -6718,8 +7050,9 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1129 -#: templates/js/translated/build.js:1749 +#: templates/js/translated/bom.js:467 templates/js/translated/build.js:1134 +#: templates/js/translated/build.js:1755 +#: templates/js/translated/table_filters.js:178 msgid "Available" msgstr "空闲" @@ -6765,11 +7098,11 @@ msgstr "" msgid "Remote image must not exceed maximum allowable file size" msgstr "" -#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1034 +#: templates/js/translated/api.js:185 templates/js/translated/modals.js:1035 msgid "No Response" msgstr "" -#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1035 +#: templates/js/translated/api.js:186 templates/js/translated/modals.js:1036 msgid "No response from the InvenTree server" msgstr "" @@ -6781,35 +7114,35 @@ msgstr "" msgid "API request returned error code 400" msgstr "" -#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1044 +#: templates/js/translated/api.js:197 templates/js/translated/modals.js:1045 msgid "Error 401: Not Authenticated" msgstr "" -#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1045 +#: templates/js/translated/api.js:198 templates/js/translated/modals.js:1046 msgid "Authentication credentials not supplied" msgstr "" -#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1049 +#: templates/js/translated/api.js:202 templates/js/translated/modals.js:1050 msgid "Error 403: Permission Denied" msgstr "" -#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1050 +#: templates/js/translated/api.js:203 templates/js/translated/modals.js:1051 msgid "You do not have the required permissions to access this function" msgstr "" -#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1054 +#: templates/js/translated/api.js:207 templates/js/translated/modals.js:1055 msgid "Error 404: Resource Not Found" msgstr "" -#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1055 +#: templates/js/translated/api.js:208 templates/js/translated/modals.js:1056 msgid "The requested resource could not be located on the server" msgstr "" -#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1059 +#: templates/js/translated/api.js:212 templates/js/translated/modals.js:1060 msgid "Error 408: Timeout" msgstr "" -#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1060 +#: templates/js/translated/api.js:213 templates/js/translated/modals.js:1061 msgid "Connection timeout while requesting data from server" msgstr "" @@ -6878,7 +7211,7 @@ msgid "Unknown response from server" msgstr "" #: templates/js/translated/barcode.js:140 -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "Invalid server response" msgstr "" @@ -6886,7 +7219,7 @@ msgstr "" msgid "Scan barcode data below" msgstr "" -#: templates/js/translated/barcode.js:280 templates/navbar.html:69 +#: templates/js/translated/barcode.js:280 templates/navbar.html:94 msgid "Scan Barcode" msgstr "扫描条形码" @@ -6906,7 +7239,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:682 +#: templates/js/translated/barcode.js:397 templates/js/translated/stock.js:839 msgid "Remove stock item" msgstr "" @@ -6976,7 +7309,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1111 +#: templates/js/translated/bom.js:408 templates/js/translated/build.js:1116 msgid "Variant stock allowed" msgstr "" @@ -7000,11 +7333,6 @@ msgstr "" msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:608 templates/js/translated/build.js:1183 -#: templates/js/translated/order.js:1319 -msgid "Actions" -msgstr "" - #: templates/js/translated/bom.js:616 msgid "Validate BOM Item" msgstr "" @@ -7025,7 +7353,7 @@ msgstr "" msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:718 templates/js/translated/build.js:855 +#: templates/js/translated/bom.js:718 templates/js/translated/build.js:860 msgid "No BOM items found" msgstr "" @@ -7033,7 +7361,7 @@ msgstr "" msgid "Are you sure you want to delete this BOM item?" msgstr "" -#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1095 +#: templates/js/translated/bom.js:974 templates/js/translated/build.js:1100 msgid "Required Part" msgstr "" @@ -7041,165 +7369,165 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:78 +#: templates/js/translated/build.js:83 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:112 +#: templates/js/translated/build.js:117 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:138 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:144 +#: templates/js/translated/build.js:149 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:153 +#: templates/js/translated/build.js:158 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:161 +#: templates/js/translated/build.js:166 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:184 +#: templates/js/translated/build.js:189 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:202 +#: templates/js/translated/build.js:207 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:220 +#: templates/js/translated/build.js:225 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:221 +#: templates/js/translated/build.js:226 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:280 msgid "Output" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:296 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:386 +#: templates/js/translated/build.js:391 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:424 templates/js/translated/order.js:1193 +#: templates/js/translated/build.js:429 templates/js/translated/order.js:1848 msgid "Location not specified" msgstr "未指定仓储地点" -#: templates/js/translated/build.js:603 +#: templates/js/translated/build.js:608 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1052 templates/js/translated/build.js:1760 -#: templates/js/translated/order.js:1326 +#: templates/js/translated/build.js:1057 templates/js/translated/build.js:1766 +#: templates/js/translated/order.js:1982 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1054 templates/js/translated/build.js:1761 -#: templates/js/translated/order.js:1327 +#: templates/js/translated/build.js:1059 templates/js/translated/build.js:1767 +#: templates/js/translated/order.js:1983 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1072 +#: templates/js/translated/build.js:1077 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1082 +#: templates/js/translated/build.js:1087 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1107 +#: templates/js/translated/build.js:1112 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1124 +#: templates/js/translated/build.js:1129 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1134 templates/js/translated/build.js:1360 -#: templates/js/translated/build.js:1756 templates/js/translated/order.js:1556 +#: templates/js/translated/build.js:1139 templates/js/translated/build.js:1365 +#: templates/js/translated/build.js:1762 templates/js/translated/order.js:2227 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1190 templates/js/translated/order.js:1610 +#: templates/js/translated/build.js:1195 templates/js/translated/order.js:2307 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1194 templates/stock_table.html:52 +#: templates/js/translated/build.js:1199 templates/stock_table.html:52 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1197 templates/js/translated/order.js:1603 +#: templates/js/translated/build.js:1202 templates/js/translated/order.js:2300 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1262 +#: templates/js/translated/build.js:1267 templates/js/translated/order.js:1499 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1333 templates/js/translated/label.js:134 -#: templates/js/translated/report.js:225 +#: templates/js/translated/build.js:1338 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:1334 +#: templates/js/translated/build.js:1339 templates/js/translated/order.js:1551 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1348 +#: templates/js/translated/build.js:1353 templates/js/translated/order.js:1565 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1377 +#: templates/js/translated/build.js:1382 templates/js/translated/order.js:1600 msgid "Confirm stock allocation" msgstr "确认库存分配" -#: templates/js/translated/build.js:1378 +#: templates/js/translated/build.js:1383 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1389 +#: templates/js/translated/build.js:1394 templates/js/translated/order.js:1613 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1451 +#: templates/js/translated/build.js:1464 templates/js/translated/order.js:1690 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1582 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:1593 templates/js/translated/part.js:1147 -#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1176 -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/build.js:1599 templates/js/translated/part.js:1147 +#: templates/js/translated/part.js:1558 templates/js/translated/stock.js:1333 +#: templates/js/translated/stock.js:2128 msgid "Select" msgstr "" -#: templates/js/translated/build.js:1613 +#: templates/js/translated/build.js:1619 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:1674 templates/js/translated/stock.js:2172 +#: templates/js/translated/build.js:1680 templates/js/translated/stock.js:2347 msgid "No user information" msgstr "没有用户信息" -#: templates/js/translated/build.js:1686 +#: templates/js/translated/build.js:1692 msgid "No information" msgstr "" -#: templates/js/translated/build.js:1737 +#: templates/js/translated/build.js:1743 msgid "No parts allocated for" msgstr "" @@ -7219,7 +7547,7 @@ msgstr "编辑制造商商品" msgid "Delete Manufacturer Part" msgstr "删除制造商商品" -#: templates/js/translated/company.js:165 templates/js/translated/order.js:90 +#: templates/js/translated/company.js:165 templates/js/translated/order.js:248 msgid "Add Supplier" msgstr "添加供应商" @@ -7354,20 +7682,20 @@ msgstr "" msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1072 templates/modals.html:19 +#: templates/js/translated/forms.js:1078 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1463 +#: templates/js/translated/forms.js:1469 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1667 +#: templates/js/translated/forms.js:1673 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:1884 +#: templates/js/translated/forms.js:1893 msgid "Clear input" msgstr "" @@ -7380,7 +7708,7 @@ msgid "NO" msgstr "" #: templates/js/translated/label.js:29 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:706 +#: templates/js/translated/stock.js:863 msgid "Select Stock Items" msgstr "选择库存项" @@ -7429,62 +7757,62 @@ msgstr "选择标签" msgid "Select Label Template" msgstr "选择标签模板" -#: templates/js/translated/modals.js:75 templates/js/translated/modals.js:119 -#: templates/js/translated/modals.js:593 +#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:120 +#: templates/js/translated/modals.js:594 msgid "Cancel" msgstr "取消" -#: templates/js/translated/modals.js:76 templates/js/translated/modals.js:118 -#: templates/js/translated/modals.js:660 templates/js/translated/modals.js:963 +#: 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/modals.html:28 templates/modals.html:51 msgid "Submit" msgstr "" -#: templates/js/translated/modals.js:117 +#: templates/js/translated/modals.js:118 msgid "Form Title" msgstr "" -#: templates/js/translated/modals.js:380 +#: templates/js/translated/modals.js:381 msgid "Waiting for server..." msgstr "" -#: templates/js/translated/modals.js:539 +#: templates/js/translated/modals.js:540 msgid "Show Error Information" msgstr "" -#: templates/js/translated/modals.js:592 +#: templates/js/translated/modals.js:593 msgid "Accept" msgstr "" -#: templates/js/translated/modals.js:649 +#: templates/js/translated/modals.js:650 msgid "Loading Data" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Invalid response from server" msgstr "" -#: templates/js/translated/modals.js:915 +#: templates/js/translated/modals.js:916 msgid "Form data missing from server response" msgstr "" -#: templates/js/translated/modals.js:927 +#: templates/js/translated/modals.js:928 msgid "Error posting form data" msgstr "" -#: templates/js/translated/modals.js:1024 +#: templates/js/translated/modals.js:1025 msgid "JSON response missing form data" msgstr "" -#: templates/js/translated/modals.js:1039 +#: templates/js/translated/modals.js:1040 msgid "Error 400: Bad Request" msgstr "" -#: templates/js/translated/modals.js:1040 +#: templates/js/translated/modals.js:1041 msgid "Server returned error code 400" msgstr "" -#: templates/js/translated/modals.js:1063 +#: templates/js/translated/modals.js:1064 msgid "Error requesting form data" msgstr "" @@ -7512,176 +7840,245 @@ msgstr "商品ID" msgid "Order ID" msgstr "" -#: templates/js/translated/model_renderers.js:256 +#: templates/js/translated/model_renderers.js:253 +msgid "Shipment ID" +msgstr "" + +#: templates/js/translated/model_renderers.js:273 msgid "Category ID" msgstr "类别 ID" -#: templates/js/translated/model_renderers.js:293 +#: templates/js/translated/model_renderers.js:310 msgid "Manufacturer Part ID" msgstr "制造商商品ID" -#: templates/js/translated/model_renderers.js:322 +#: templates/js/translated/model_renderers.js:339 msgid "Supplier Part ID" msgstr "供应商商品ID" -#: templates/js/translated/order.js:48 +#: templates/js/translated/order.js:75 +msgid "No stock items have been allocated to this shipment" +msgstr "" + +#: templates/js/translated/order.js:80 +msgid "The following stock items will be shipped" +msgstr "" + +#: templates/js/translated/order.js:120 +msgid "Complete Shipment" +msgstr "" + +#: templates/js/translated/order.js:126 +msgid "Confirm Shipment" +msgstr "" + +#: templates/js/translated/order.js:181 +msgid "Create New Shipment" +msgstr "" + +#: templates/js/translated/order.js:206 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:73 +#: templates/js/translated/order.js:231 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:208 +#: templates/js/translated/order.js:366 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:211 templates/js/translated/stock.js:505 +#: templates/js/translated/order.js:369 templates/js/translated/stock.js:509 msgid "Format" msgstr "" -#: templates/js/translated/order.js:212 templates/js/translated/stock.js:506 +#: templates/js/translated/order.js:370 templates/js/translated/stock.js:510 msgid "Select file format" msgstr "" -#: templates/js/translated/order.js:300 +#: templates/js/translated/order.js:460 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:301 +#: templates/js/translated/order.js:461 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:326 +#: templates/js/translated/order.js:486 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:360 templates/js/translated/stock.js:1755 +#: templates/js/translated/order.js:520 templates/js/translated/stock.js:1930 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:427 +#: templates/js/translated/order.js:587 msgid "Order Code" msgstr "订单编码" -#: templates/js/translated/order.js:428 +#: templates/js/translated/order.js:588 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:430 +#: templates/js/translated/order.js:590 msgid "Receive" msgstr "" -#: templates/js/translated/order.js:449 +#: templates/js/translated/order.js:609 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:450 +#: templates/js/translated/order.js:610 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:627 templates/js/translated/part.js:746 +#: templates/js/translated/order.js:790 templates/js/translated/part.js:746 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:659 templates/js/translated/order.js:1062 +#: templates/js/translated/order.js:815 templates/js/translated/order.js:1230 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:771 templates/js/translated/order.js:1645 +#: templates/js/translated/order.js:936 templates/js/translated/order.js:2356 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:783 templates/js/translated/order.js:1656 +#: templates/js/translated/order.js:948 templates/js/translated/order.js:2367 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:822 +#: templates/js/translated/order.js:987 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:849 templates/js/translated/order.js:1466 +#: templates/js/translated/order.js:1014 templates/js/translated/order.js:2138 msgid "Total" msgstr "" -#: templates/js/translated/order.js:903 templates/js/translated/order.js:1491 +#: templates/js/translated/order.js:1068 templates/js/translated/order.js:2163 #: templates/js/translated/part.js:1775 templates/js/translated/part.js:1986 msgid "Unit Price" msgstr "单价" -#: templates/js/translated/order.js:918 templates/js/translated/order.js:1507 +#: templates/js/translated/order.js:1083 templates/js/translated/order.js:2179 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:996 templates/js/translated/order.js:1616 +#: templates/js/translated/order.js:1161 templates/js/translated/order.js:2313 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:997 +#: templates/js/translated/order.js:1162 templates/js/translated/order.js:2317 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:1001 templates/js/translated/part.js:878 +#: templates/js/translated/order.js:1166 templates/js/translated/part.js:878 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:1038 +#: templates/js/translated/order.js:1206 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:1076 +#: templates/js/translated/order.js:1244 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:1154 +#: templates/js/translated/order.js:1322 +msgid "Edit shipment" +msgstr "" + +#: templates/js/translated/order.js:1325 +msgid "Complete shipment" +msgstr "" + +#: templates/js/translated/order.js:1330 +msgid "Delete shipment" +msgstr "" + +#: templates/js/translated/order.js:1350 +msgid "Edit Shipment" +msgstr "" + +#: templates/js/translated/order.js:1367 +msgid "Delete Shipment" +msgstr "" + +#: templates/js/translated/order.js:1401 +msgid "No matching shipments found" +msgstr "" + +#: templates/js/translated/order.js:1411 +msgid "Shipment Reference" +msgstr "" + +#: templates/js/translated/order.js:1435 +msgid "Not shipped" +msgstr "" + +#: templates/js/translated/order.js:1441 +msgid "Tracking" +msgstr "" + +#: templates/js/translated/order.js:1601 +msgid "Allocate Stock Items to Sales Order" +msgstr "" + +#: templates/js/translated/order.js:1809 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:1247 +#: templates/js/translated/order.js:1898 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1264 +#: templates/js/translated/order.js:1915 msgid "Confirm Delete Operation" msgstr "确认删除操作" -#: templates/js/translated/order.js:1265 +#: templates/js/translated/order.js:1916 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:1307 +#: templates/js/translated/order.js:1959 templates/js/translated/order.js:2048 +#: templates/js/translated/stock.js:1249 +msgid "Shipped to customer" +msgstr "" + +#: templates/js/translated/order.js:1967 templates/js/translated/order.js:2057 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:1556 -msgid "Fulfilled" -msgstr "" - -#: templates/js/translated/order.js:1600 +#: templates/js/translated/order.js:2297 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:1606 +#: templates/js/translated/order.js:2303 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:1613 templates/js/translated/order.js:1792 +#: templates/js/translated/order.js:2310 templates/js/translated/order.js:2476 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:1617 -msgid "Delete line item " +#: templates/js/translated/order.js:2321 +msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:1740 -msgid "Allocate Stock Item" +#: templates/js/translated/order.js:2324 +msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:1800 +#: templates/js/translated/order.js:2382 +msgid "Allocate Serial Numbers" +msgstr "" + +#: templates/js/translated/order.js:2484 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:1814 +#: templates/js/translated/order.js:2498 msgid "No matching line items" msgstr "" @@ -7826,12 +8223,12 @@ msgid "No category" msgstr "没有分类" #: templates/js/translated/part.js:1230 -#: templates/js/translated/table_filters.js:381 +#: templates/js/translated/table_filters.js:412 msgid "Low stock" msgstr "" #: templates/js/translated/part.js:1321 templates/js/translated/part.js:1493 -#: templates/js/translated/stock.js:1914 +#: templates/js/translated/stock.js:2089 msgid "Display as list" msgstr "" @@ -7839,7 +8236,7 @@ msgstr "" msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:1933 +#: templates/js/translated/part.js:1512 templates/js/translated/stock.js:2108 msgid "Display as tree" msgstr "" @@ -7847,7 +8244,7 @@ msgstr "" msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:1977 +#: templates/js/translated/part.js:1590 templates/js/translated/stock.js:2152 msgid "Path" msgstr "" @@ -7855,11 +8252,11 @@ msgstr "" msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:898 +#: templates/js/translated/part.js:1685 templates/js/translated/stock.js:1055 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:899 +#: templates/js/translated/part.js:1686 templates/js/translated/stock.js:1056 msgid "Delete test result" msgstr "" @@ -7898,6 +8295,10 @@ msgstr "" msgid "Single Price Difference" msgstr "" +#: templates/js/translated/plugin.js:22 +msgid "The Plugin was installed" +msgstr "" + #: templates/js/translated/report.js:67 msgid "items selected" msgstr "" @@ -7964,300 +8365,316 @@ msgstr "" msgid "Sales Order(s) must be selected before printing report" msgstr "" -#: templates/js/translated/stock.js:71 +#: templates/js/translated/stock.js:72 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:89 templates/js/translated/stock.js:168 +#: templates/js/translated/stock.js:90 templates/js/translated/stock.js:172 msgid "Next available serial number" msgstr "" -#: templates/js/translated/stock.js:91 templates/js/translated/stock.js:170 +#: templates/js/translated/stock.js:92 templates/js/translated/stock.js:174 msgid "Latest serial number" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:100 +msgid "Confirm Stock Serialization" +msgstr "" + +#: templates/js/translated/stock.js:109 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:141 +#: templates/js/translated/stock.js:145 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:181 +#: templates/js/translated/stock.js:185 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:224 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:226 +#: templates/js/translated/stock.js:230 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:382 +#: templates/js/translated/stock.js:386 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:407 +#: templates/js/translated/stock.js:411 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:411 templates/js/translated/stock.js:412 +#: templates/js/translated/stock.js:415 templates/js/translated/stock.js:416 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:428 +#: templates/js/translated/stock.js:432 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:448 +#: templates/js/translated/stock.js:452 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:457 +#: templates/js/translated/stock.js:461 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:502 +#: templates/js/translated/stock.js:506 msgid "Export Stock" msgstr "" -#: templates/js/translated/stock.js:513 +#: templates/js/translated/stock.js:517 msgid "Include Sublocations" msgstr "" -#: templates/js/translated/stock.js:514 +#: templates/js/translated/stock.js:518 msgid "Include stock items in sublocations" msgstr "" -#: templates/js/translated/stock.js:556 +#: templates/js/translated/stock.js:627 +msgid "Confirm stock assignment" +msgstr "" + +#: templates/js/translated/stock.js:628 +msgid "Assign Stock to Customer" +msgstr "" + +#: templates/js/translated/stock.js:713 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:557 +#: templates/js/translated/stock.js:714 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:563 +#: templates/js/translated/stock.js:720 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:564 +#: templates/js/translated/stock.js:721 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:725 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:726 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:573 +#: templates/js/translated/stock.js:730 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:574 users/models.py:200 +#: templates/js/translated/stock.js:731 users/models.py:202 msgid "Add" msgstr "添加" -#: templates/js/translated/stock.js:578 templates/stock_table.html:56 +#: templates/js/translated/stock.js:735 templates/stock_table.html:57 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:667 +#: templates/js/translated/stock.js:824 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:707 +#: templates/js/translated/stock.js:864 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:865 +#: templates/js/translated/stock.js:1022 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:867 +#: templates/js/translated/stock.js:1024 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:1029 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:894 +#: templates/js/translated/stock.js:1051 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:1077 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:977 +#: templates/js/translated/stock.js:1134 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1084 +#: templates/js/translated/stock.js:1241 msgid "In production" msgstr "正在生产" -#: templates/js/translated/stock.js:1088 +#: templates/js/translated/stock.js:1245 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1092 -msgid "Shipped to customer" -msgstr "" - -#: templates/js/translated/stock.js:1096 +#: templates/js/translated/stock.js:1253 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1102 +#: templates/js/translated/stock.js:1259 msgid "No stock location set" msgstr "未设置仓储地点" -#: templates/js/translated/stock.js:1260 +#: templates/js/translated/stock.js:1417 msgid "Stock item is in production" msgstr "库存品正在生产" -#: templates/js/translated/stock.js:1265 +#: templates/js/translated/stock.js:1422 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1268 +#: templates/js/translated/stock.js:1425 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1272 +#: templates/js/translated/stock.js:1429 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1274 +#: templates/js/translated/stock.js:1431 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1278 -msgid "Stock item has been allocated" +#: templates/js/translated/stock.js:1437 +msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1282 +#: templates/js/translated/stock.js:1439 +msgid "Stock item has been fully allocated" +msgstr "" + +#: templates/js/translated/stock.js:1441 +msgid "Stock item has been partially allocated" +msgstr "" + +#: templates/js/translated/stock.js:1446 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1289 +#: templates/js/translated/stock.js:1453 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1455 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1293 +#: templates/js/translated/stock.js:1457 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1297 -#: templates/js/translated/table_filters.js:183 +#: templates/js/translated/stock.js:1461 +#: templates/js/translated/table_filters.js:188 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1347 +#: templates/js/translated/stock.js:1511 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1420 +#: templates/js/translated/stock.js:1584 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1458 +#: templates/js/translated/stock.js:1622 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:1479 templates/js/translated/stock.js:1527 +#: templates/js/translated/stock.js:1643 templates/js/translated/stock.js:1691 msgid "items" msgstr "" -#: templates/js/translated/stock.js:1567 +#: templates/js/translated/stock.js:1731 msgid "batches" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1758 msgid "locations" msgstr "" -#: templates/js/translated/stock.js:1596 +#: templates/js/translated/stock.js:1760 msgid "Undefined location" msgstr "" -#: templates/js/translated/stock.js:1770 +#: templates/js/translated/stock.js:1945 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:1784 +#: templates/js/translated/stock.js:1959 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:1785 +#: templates/js/translated/stock.js:1960 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2009 +#: templates/js/translated/stock.js:2184 msgid "Invalid date" msgstr "" -#: templates/js/translated/stock.js:2031 +#: templates/js/translated/stock.js:2206 msgid "Details" msgstr "详情" -#: templates/js/translated/stock.js:2056 +#: templates/js/translated/stock.js:2231 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2075 +#: templates/js/translated/stock.js:2250 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2094 +#: templates/js/translated/stock.js:2269 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2112 +#: templates/js/translated/stock.js:2287 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2135 +#: templates/js/translated/stock.js:2310 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2143 +#: templates/js/translated/stock.js:2318 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2184 +#: templates/js/translated/stock.js:2359 msgid "Edit tracking entry" msgstr "" -#: templates/js/translated/stock.js:2185 +#: templates/js/translated/stock.js:2360 msgid "Delete tracking entry" msgstr "" -#: templates/js/translated/stock.js:2236 +#: templates/js/translated/stock.js:2411 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2287 +#: templates/js/translated/stock.js:2462 msgid "Uninstall Stock Item" msgstr "" @@ -8278,7 +8695,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:110 -#: templates/js/translated/table_filters.js:178 +#: templates/js/translated/table_filters.js:183 msgid "Include sublocations" msgstr "" @@ -8288,54 +8705,54 @@ msgstr "" #: templates/js/translated/table_filters.js:121 #: templates/js/translated/table_filters.js:122 -#: templates/js/translated/table_filters.js:358 +#: templates/js/translated/table_filters.js:389 msgid "Include subcategories" msgstr "" #: templates/js/translated/table_filters.js:126 -#: templates/js/translated/table_filters.js:393 +#: templates/js/translated/table_filters.js:424 msgid "Subscribed" msgstr "" #: templates/js/translated/table_filters.js:136 -#: templates/js/translated/table_filters.js:213 +#: templates/js/translated/table_filters.js:218 msgid "Is Serialized" msgstr "" #: templates/js/translated/table_filters.js:139 -#: templates/js/translated/table_filters.js:220 +#: templates/js/translated/table_filters.js:225 msgid "Serial number GTE" msgstr "" #: templates/js/translated/table_filters.js:140 -#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:226 msgid "Serial number greater than or equal to" msgstr "" #: templates/js/translated/table_filters.js:143 -#: templates/js/translated/table_filters.js:224 +#: templates/js/translated/table_filters.js:229 msgid "Serial number LTE" msgstr "" #: templates/js/translated/table_filters.js:144 -#: templates/js/translated/table_filters.js:225 +#: templates/js/translated/table_filters.js:230 msgid "Serial number less than or equal to" msgstr "" #: templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:148 -#: templates/js/translated/table_filters.js:216 -#: templates/js/translated/table_filters.js:217 +#: templates/js/translated/table_filters.js:221 +#: templates/js/translated/table_filters.js:222 msgid "Serial number" msgstr "" #: templates/js/translated/table_filters.js:152 -#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:239 msgid "Batch code" msgstr "" #: templates/js/translated/table_filters.js:163 -#: templates/js/translated/table_filters.js:348 +#: templates/js/translated/table_filters.js:379 msgid "Active parts" msgstr "" @@ -8356,101 +8773,111 @@ msgid "Item has been allocated" msgstr "" #: templates/js/translated/table_filters.js:179 -msgid "Include stock in sublocations" +msgid "Stock is available for use" msgstr "" #: templates/js/translated/table_filters.js:184 -msgid "Show stock items which are depleted" +msgid "Include stock in sublocations" msgstr "" #: templates/js/translated/table_filters.js:189 +msgid "Show stock items which are depleted" +msgstr "" + +#: templates/js/translated/table_filters.js:194 msgid "Show items which are in stock" msgstr "" -#: templates/js/translated/table_filters.js:193 +#: templates/js/translated/table_filters.js:198 msgid "In Production" msgstr "正在生产" -#: templates/js/translated/table_filters.js:194 +#: templates/js/translated/table_filters.js:199 msgid "Show items which are in production" msgstr "显示正在生产的项目" -#: templates/js/translated/table_filters.js:198 +#: templates/js/translated/table_filters.js:203 msgid "Include Variants" msgstr "" -#: templates/js/translated/table_filters.js:199 +#: templates/js/translated/table_filters.js:204 msgid "Include stock items for variant parts" msgstr "" -#: templates/js/translated/table_filters.js:203 +#: templates/js/translated/table_filters.js:208 msgid "Installed" msgstr "" -#: templates/js/translated/table_filters.js:204 +#: templates/js/translated/table_filters.js:209 msgid "Show stock items which are installed in another item" msgstr "" -#: templates/js/translated/table_filters.js:209 +#: templates/js/translated/table_filters.js:214 msgid "Show items which have been assigned to a customer" msgstr "" -#: templates/js/translated/table_filters.js:229 -#: templates/js/translated/table_filters.js:230 +#: templates/js/translated/table_filters.js:234 +#: templates/js/translated/table_filters.js:235 msgid "Stock status" msgstr "" -#: templates/js/translated/table_filters.js:238 +#: templates/js/translated/table_filters.js:243 msgid "Has purchase price" msgstr "" -#: templates/js/translated/table_filters.js:239 +#: templates/js/translated/table_filters.js:244 msgid "Show stock items which have a purchase price set" msgstr "" -#: templates/js/translated/table_filters.js:248 +#: templates/js/translated/table_filters.js:253 msgid "Show stock items which have expired" msgstr "" -#: templates/js/translated/table_filters.js:254 +#: templates/js/translated/table_filters.js:259 msgid "Show stock which is close to expiring" msgstr "" -#: templates/js/translated/table_filters.js:285 +#: templates/js/translated/table_filters.js:290 msgid "Build status" msgstr "生产状态" -#: templates/js/translated/table_filters.js:313 -#: templates/js/translated/table_filters.js:330 +#: templates/js/translated/table_filters.js:303 +#: templates/js/translated/table_filters.js:344 +msgid "Assigned to me" +msgstr "" + +#: templates/js/translated/table_filters.js:320 +#: templates/js/translated/table_filters.js:331 +#: templates/js/translated/table_filters.js:352 msgid "Order status" msgstr "" -#: templates/js/translated/table_filters.js:318 -#: templates/js/translated/table_filters.js:335 +#: templates/js/translated/table_filters.js:336 +#: templates/js/translated/table_filters.js:357 msgid "Outstanding" msgstr "" -#: templates/js/translated/table_filters.js:359 +#: templates/js/translated/table_filters.js:390 msgid "Include parts in subcategories" msgstr "" -#: templates/js/translated/table_filters.js:363 +#: templates/js/translated/table_filters.js:394 msgid "Has IPN" msgstr "" -#: templates/js/translated/table_filters.js:364 +#: templates/js/translated/table_filters.js:395 msgid "Part has internal part number" msgstr "商品有内部编号" -#: templates/js/translated/table_filters.js:369 +#: templates/js/translated/table_filters.js:400 msgid "Show active parts" msgstr "" -#: templates/js/translated/table_filters.js:377 +#: templates/js/translated/table_filters.js:408 msgid "Stock available" msgstr "" -#: templates/js/translated/table_filters.js:405 +#: templates/js/translated/table_filters.js:436 msgid "Purchasable" msgstr "" @@ -8507,27 +8934,23 @@ msgstr "" msgid "All" msgstr "" -#: templates/navbar.html:40 +#: templates/navbar.html:42 msgid "Buy" msgstr "采购" -#: templates/navbar.html:52 +#: templates/navbar.html:54 msgid "Sell" msgstr "销售" -#: templates/navbar.html:86 users/models.py:39 -msgid "Admin" -msgstr "管理员" - -#: templates/navbar.html:88 +#: templates/navbar.html:113 msgid "Logout" msgstr "" -#: templates/navbar.html:90 +#: templates/navbar.html:115 msgid "Login" msgstr "" -#: templates/navbar.html:111 +#: templates/navbar.html:136 msgid "About InvenTree" msgstr "" @@ -8639,15 +9062,15 @@ msgstr "" msgid "Order selected items" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change status" msgstr "" -#: templates/stock_table.html:53 +#: templates/stock_table.html:54 msgid "Change stock status" msgstr "" -#: templates/stock_table.html:56 +#: templates/stock_table.html:57 msgid "Delete selected items" msgstr "" @@ -8683,35 +9106,35 @@ msgstr "权限" msgid "Important dates" msgstr "重要日期" -#: users/models.py:187 +#: users/models.py:189 msgid "Permission set" msgstr "权限设置" -#: users/models.py:195 +#: users/models.py:197 msgid "Group" msgstr "群组" -#: users/models.py:198 +#: users/models.py:200 msgid "View" msgstr "视图" -#: users/models.py:198 +#: users/models.py:200 msgid "Permission to view items" msgstr "查看项目权限" -#: users/models.py:200 +#: users/models.py:202 msgid "Permission to add items" msgstr "添加项目权限" -#: users/models.py:202 +#: users/models.py:204 msgid "Change" msgstr "更改" -#: users/models.py:202 +#: users/models.py:204 msgid "Permissions to edit items" msgstr "编辑项目权限" -#: users/models.py:204 +#: users/models.py:206 msgid "Permission to delete items" msgstr "删除项目权限" diff --git a/InvenTree/part/api.py b/InvenTree/part/api.py index c1b86b6528..a672e79051 100644 --- a/InvenTree/part/api.py +++ b/InvenTree/part/api.py @@ -239,6 +239,23 @@ class CategoryParameterList(generics.ListAPIView): return queryset +class CategoryTree(generics.ListAPIView): + """ + API endpoint for accessing a list of PartCategory objects ready for rendering a tree. + """ + + queryset = PartCategory.objects.all() + serializer_class = part_serializers.CategoryTree + + filter_backends = [ + DjangoFilterBackend, + filters.OrderingFilter, + ] + + # Order by tree level (top levels first) and then name + ordering = ['level', 'name'] + + class PartSalePriceList(generics.ListCreateAPIView): """ API endpoint for list view of PartSalePriceBreak model @@ -1515,6 +1532,7 @@ part_api_urls = [ # Base URL for PartCategory API endpoints url(r'^category/', include([ + url(r'^tree/', CategoryTree.as_view(), name='api-part-category-tree'), url(r'^parameters/', CategoryParameterList.as_view(), name='api-part-category-parameter-list'), url(r'^(?P\d+)/?', CategoryDetail.as_view(), name='api-part-category-detail'), diff --git a/InvenTree/part/serializers.py b/InvenTree/part/serializers.py index 1be81c16ba..cf9d34a44c 100644 --- a/InvenTree/part/serializers.py +++ b/InvenTree/part/serializers.py @@ -70,6 +70,20 @@ class CategorySerializer(InvenTreeModelSerializer): ] +class CategoryTree(InvenTreeModelSerializer): + """ + Serializer for PartCategory tree + """ + + class Meta: + model = PartCategory + fields = [ + 'pk', + 'name', + 'parent', + ] + + class PartAttachmentSerializer(InvenTreeAttachmentSerializer): """ Serializer for the PartAttachment class diff --git a/InvenTree/part/templates/part/category.html b/InvenTree/part/templates/part/category.html index 4797571fda..4de0005672 100644 --- a/InvenTree/part/templates/part/category.html +++ b/InvenTree/part/templates/part/category.html @@ -6,6 +6,10 @@ {% include 'part/category_sidebar.html' %} {% endblock %} +{% block breadcrumb_tree %} + +{% endblock breadcrumb_tree %} + {% block heading %} {% if category %} {% trans "Part Category" %}: {{ category.name }} @@ -239,8 +243,24 @@ {% endif %} + // Enable left-hand navigation sidebar enableSidebar('category'); + // Enable breadcrumb tree view + enableBreadcrumbTree({ + label: 'category', + url: '{% url "api-part-category-tree" %}', + {% if category %} + selected: {{ category.pk }}, + {% endif %} + processNode: function(node) { + node.text = node.name; + node.href = `/part/category/${node.pk}/`; + + return node; + } + }); + loadPartCategoryTable( $('#subcategory-table'), { params: { diff --git a/InvenTree/part/templates/part/detail.html b/InvenTree/part/templates/part/detail.html index de1d46596a..f1b47bc4e2 100644 --- a/InvenTree/part/templates/part/detail.html +++ b/InvenTree/part/templates/part/detail.html @@ -9,6 +9,10 @@ {% include 'part/part_sidebar.html' %} {% endblock %} +{% block breadcrumb_tree %} + +{% endblock breadcrumb_tree %} + {% block page_content %}
@@ -132,10 +136,6 @@
-
- -
-
@@ -1066,4 +1066,18 @@ enableSidebar('part'); + enableBreadcrumbTree({ + label: 'part', + url: '{% url "api-part-category-tree" %}', + {% if part.category %} + selected: {{ part.category.pk }}, + {% endif %} + processNode: function(node) { + node.text = node.name; + node.href = `/part/category/${node.pk}/`; + + return node; + } + }); + {% endblock %} diff --git a/InvenTree/part/templates/part/part_app_base.html b/InvenTree/part/templates/part/part_app_base.html index 992ac15e87..0b578aaadd 100644 --- a/InvenTree/part/templates/part/part_app_base.html +++ b/InvenTree/part/templates/part/part_app_base.html @@ -14,9 +14,10 @@ {% endblock %} {% block breadcrumbs %} + {% if part %} {% include "part/cat_link.html" with category=part.category part=part %} {% else %} {% include 'part/cat_link.html' with category=category %} {% endif %} -{% endblock %} +{% endblock breadcrumbs %} diff --git a/InvenTree/stock/api.py b/InvenTree/stock/api.py index 26787878a8..9961bb7bae 100644 --- a/InvenTree/stock/api.py +++ b/InvenTree/stock/api.py @@ -277,6 +277,24 @@ class StockLocationList(generics.ListCreateAPIView): ] +class StockLocationTree(generics.ListAPIView): + """ + API endpoint for accessing a list of StockLocation objects, + ready for rendering as a tree + """ + + queryset = StockLocation.objects.all() + serializer_class = StockSerializers.LocationTreeSerializer + + filter_backends = [ + DjangoFilterBackend, + filters.OrderingFilter, + ] + + # Order by tree level (top levels first) and then name + ordering = ['level', 'name'] + + class StockFilter(rest_filters.FilterSet): """ FilterSet for StockItem LIST API @@ -1182,6 +1200,9 @@ class LocationDetail(generics.RetrieveUpdateDestroyAPIView): stock_api_urls = [ url(r'^location/', include([ + + url(r'^tree/', StockLocationTree.as_view(), name='api-location-tree'), + url(r'^(?P\d+)/', LocationDetail.as_view(), name='api-location-detail'), url(r'^.*$', StockLocationList.as_view(), name='api-location-list'), ])), diff --git a/InvenTree/stock/serializers.py b/InvenTree/stock/serializers.py index fb78eaeaa0..e69cd90f82 100644 --- a/InvenTree/stock/serializers.py +++ b/InvenTree/stock/serializers.py @@ -390,6 +390,20 @@ class SerializeStockItemSerializer(serializers.Serializer): ) +class LocationTreeSerializer(InvenTree.serializers.InvenTreeModelSerializer): + """ + Serializer for a simple tree view + """ + + class Meta: + model = StockLocation + fields = [ + 'pk', + 'name', + 'parent', + ] + + class LocationSerializer(InvenTree.serializers.InvenTreeModelSerializer): """ Detailed information about a stock location """ diff --git a/InvenTree/stock/templates/stock/item_base.html b/InvenTree/stock/templates/stock/item_base.html index 64b45ed0c8..65f5f21000 100644 --- a/InvenTree/stock/templates/stock/item_base.html +++ b/InvenTree/stock/templates/stock/item_base.html @@ -9,9 +9,15 @@ {% endblock %} {% block breadcrumbs %} + {% include 'stock/loc_link.html' with location=item.location %} {% endblock %} +{% block breadcrumb_tree %} + +{% endblock breadcrumb_tree %} + + {% block heading %} {% trans "Stock Item" %}: {{ item.part.full_name}} {% endblock heading %} @@ -611,4 +617,18 @@ $('#serial-number-search').click(function() { findStockItemBySerialNumber({{ item.part.pk }}); }); +enableBreadcrumbTree({ + label: 'stockitem', + url: '{% url "api-location-tree" %}', + {% if item.location %} + selected: {{ item.location.pk }}, + {% endif %} + processNode: function(node) { + node.text = node.name; + node.href = `/stock/item/${node.pk}/`; + + return node; + } +}); + {% endblock %} diff --git a/InvenTree/stock/templates/stock/location.html b/InvenTree/stock/templates/stock/location.html index 6a201e610c..39b9faedb4 100644 --- a/InvenTree/stock/templates/stock/location.html +++ b/InvenTree/stock/templates/stock/location.html @@ -7,6 +7,10 @@ {% include "stock/location_sidebar.html" %} {% endblock %} +{% block breadcrumb_tree %} + +{% endblock breadcrumb_tree %} + {% block heading %} {% if location %} {% trans "Stock Location" %}: {{ location.name }} @@ -348,4 +352,19 @@ enableSidebar('stocklocation'); + // Enable breadcrumb tree view + enableBreadcrumbTree({ + label: 'location', + url: '{% url "api-location-tree" %}', + {% if location %} + selected: {{ location.pk }}, + {% endif %} + processNode: function(node) { + node.text = node.name; + node.href = `/stock/location/${node.pk}/`; + + return node; + } + }); + {% endblock %} diff --git a/InvenTree/stock/templates/stock/stock_app_base.html b/InvenTree/stock/templates/stock/stock_app_base.html index 3da3fad240..93994ebd21 100644 --- a/InvenTree/stock/templates/stock/stock_app_base.html +++ b/InvenTree/stock/templates/stock/stock_app_base.html @@ -18,9 +18,10 @@ {% endblock %} {% block breadcrumbs %} + {% if item %} {% include 'stock/loc_link.html' with location=item.location %} {% else %} {% include 'stock/loc_link.html' with location=location %} {% endif %} -{% endblock %} +{% endblock breadcrumbs %} diff --git a/InvenTree/templates/base.html b/InvenTree/templates/base.html index 5636af86e8..a71f4e67c9 100644 --- a/InvenTree/templates/base.html +++ b/InvenTree/templates/base.html @@ -74,13 +74,13 @@
{% trans "Quantity" %}{{ build.quantity }}
{% trans "Status" %}