From 362437e75ede7fd25f23e3ec5e87db811c070760 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Fri, 13 Nov 2020 07:28:21 +1100 Subject: [PATCH] PEP fixes --- InvenTree/company/test_views.py | 4 - InvenTree/locale/de/LC_MESSAGES/django.po | 1002 ++++++++++++--------- InvenTree/locale/en/LC_MESSAGES/django.po | 956 +++++++++++--------- InvenTree/locale/es/LC_MESSAGES/django.po | 956 +++++++++++--------- 4 files changed, 1652 insertions(+), 1266 deletions(-) diff --git a/InvenTree/company/test_views.py b/InvenTree/company/test_views.py index 9fbe0e01f5..0163e65c29 100644 --- a/InvenTree/company/test_views.py +++ b/InvenTree/company/test_views.py @@ -73,13 +73,11 @@ class CompanyViewTestBase(TestCase): return json_data, form_errors - class SupplierPartViewTests(CompanyViewTestBase): """ Tests for the SupplierPart views. """ - def test_supplier_part_create(self): """ Test the SupplierPartCreate view. @@ -193,8 +191,6 @@ class CompanyViewTest(CompanyViewTestBase): Test the view for creating a company """ - url = reverse('company-create') - # Check that different company types return different form titles response = self.client.get(reverse('supplier-create'), HTTP_X_REQUESTED_WITH='XMLHttpRequest') self.assertContains(response, 'Create new Supplier') diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 242061af16..e7f273efc2 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-11-10 13:31+0000\n" +"POT-Creation-Date: 2020-11-12 22:05+1100\n" "PO-Revision-Date: 2020-05-03 11:32+0200\n" "Last-Translator: Christian Schlüter \n" "Language-Team: C \n" @@ -25,31 +25,37 @@ msgstr "Keine Aktion angegeben" msgid "No matching action found" msgstr "Keine passende Aktion gefunden" -#: InvenTree/forms.py:107 build/forms.py:82 build/forms.py:170 +#: InvenTree/forms.py:108 build/forms.py:82 build/forms.py:170 msgid "Confirm" msgstr "Bestätigen" -#: InvenTree/forms.py:123 +#: InvenTree/forms.py:124 #, fuzzy #| msgid "Confim BOM item deletion" msgid "Confirm item deletion" msgstr "Löschung von BOM-Position bestätigen" -#: InvenTree/forms.py:155 +#: InvenTree/forms.py:156 #, fuzzy #| msgid "Create new part" msgid "Enter new password" msgstr "Neues Teil anlegen" -#: InvenTree/forms.py:162 +#: InvenTree/forms.py:163 msgid "Confirm new password" msgstr "" -#: InvenTree/forms.py:197 +#: InvenTree/forms.py:198 msgid "Apply Theme" msgstr "" -#: InvenTree/helpers.py:361 order/models.py:187 order/models.py:269 +#: InvenTree/forms.py:228 +#, fuzzy +#| msgid "Set Part Category" +msgid "Select Category" +msgstr "Teilkategorie auswählen" + +#: InvenTree/helpers.py:361 order/models.py:189 order/models.py:271 msgid "Invalid quantity provided" msgstr "Keine gültige Menge" @@ -107,19 +113,19 @@ msgstr "Name" msgid "Description (optional)" msgstr "Firmenbeschreibung" -#: InvenTree/settings.py:350 +#: InvenTree/settings.py:354 msgid "English" msgstr "Englisch" -#: InvenTree/settings.py:351 +#: InvenTree/settings.py:355 msgid "German" msgstr "Deutsch" -#: InvenTree/settings.py:352 +#: InvenTree/settings.py:356 msgid "French" msgstr "Französisch" -#: InvenTree/settings.py:353 +#: InvenTree/settings.py:357 msgid "Polish" msgstr "Polnisch" @@ -182,67 +188,71 @@ msgstr "" msgid "Production" msgstr "Standort" -#: InvenTree/validators.py:39 +#: InvenTree/validators.py:22 +msgid "Not a valid currency code" +msgstr "" + +#: InvenTree/validators.py:50 msgid "Invalid character in part name" msgstr "Ungültiger Buchstabe im Teilenamen" -#: InvenTree/validators.py:52 +#: InvenTree/validators.py:63 msgid "IPN must match regex pattern" msgstr "IPN muss zu Regex-Muster passen" -#: InvenTree/validators.py:66 InvenTree/validators.py:80 -#: InvenTree/validators.py:94 +#: InvenTree/validators.py:77 InvenTree/validators.py:91 +#: InvenTree/validators.py:105 #, fuzzy #| msgid "IPN must match regex pattern" msgid "Reference must match pattern" msgstr "IPN muss zu Regex-Muster passen" -#: InvenTree/validators.py:102 +#: InvenTree/validators.py:113 #, python-brace-format msgid "Illegal character in name ({x})" msgstr "Ungültiges Zeichen im Namen ({x})" -#: InvenTree/validators.py:121 InvenTree/validators.py:137 +#: InvenTree/validators.py:132 InvenTree/validators.py:148 msgid "Overage value must not be negative" msgstr "Überschuss-Wert darf nicht negativ sein" -#: InvenTree/validators.py:139 +#: InvenTree/validators.py:150 msgid "Overage must not exceed 100%" msgstr "Überschuss darf 100% nicht überschreiten" -#: InvenTree/validators.py:146 +#: InvenTree/validators.py:157 msgid "Overage must be an integer value or a percentage" msgstr "Überschuss muss eine Ganzzahl oder ein Prozentwert sein" -#: InvenTree/views.py:493 +#: InvenTree/views.py:494 #, fuzzy #| msgid "Delete BOM Item" msgid "Delete Item" msgstr "BOM-Position löschen" -#: InvenTree/views.py:542 +#: InvenTree/views.py:543 #, fuzzy #| msgid "Confim BOM item deletion" msgid "Check box to confirm item deletion" msgstr "Löschung von BOM-Position bestätigen" -#: InvenTree/views.py:557 templates/InvenTree/settings/user.html:18 +#: InvenTree/views.py:558 templates/InvenTree/settings/user.html:18 #, fuzzy #| msgid "No user information" msgid "Edit User Information" msgstr "Keine Benutzerinformation" -#: InvenTree/views.py:568 templates/InvenTree/settings/user.html:22 +#: InvenTree/views.py:569 templates/InvenTree/settings/user.html:22 #, fuzzy #| msgid "Select part" msgid "Set Password" msgstr "Teil auswählen" -#: InvenTree/views.py:587 +#: InvenTree/views.py:588 msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:757 +#: InvenTree/views.py:794 msgid "Database Statistics" msgstr "Datenbankstatistiken" @@ -298,10 +308,10 @@ msgstr "Bestell-Referenz" #: build/forms.py:70 build/templates/build/auto_allocate.html:17 #: build/templates/build/build_base.html:78 -#: build/templates/build/detail.html:29 -#: company/templates/company/supplier_part_pricing.html:75 +#: build/templates/build/detail.html:29 common/models.py:488 +#: company/forms.py:112 company/templates/company/supplier_part_pricing.html:75 #: order/templates/order/order_wizard/select_parts.html:32 -#: order/templates/order/purchase_order_detail.html:178 +#: order/templates/order/purchase_order_detail.html:179 #: order/templates/order/sales_order_detail.html:74 #: order/templates/order/sales_order_detail.html:156 #: part/templates/part/allocation.html:16 @@ -397,7 +407,7 @@ msgstr "Bauauftrag" #: build/models.py:57 build/templates/build/index.html:6 #: build/templates/build/index.html:14 order/templates/order/so_builds.html:11 #: order/templates/order/so_tabs.html:9 part/templates/part/tabs.html:31 -#: templates/InvenTree/settings/tabs.html:25 users/models.py:30 +#: templates/InvenTree/settings/tabs.html:28 users/models.py:30 msgid "Build Orders" msgstr "Bauaufträge" @@ -407,19 +417,20 @@ msgstr "Bauaufträge" msgid "Build Order Reference" msgstr "Bestellreferenz" -#: build/models.py:73 order/templates/order/purchase_order_detail.html:173 +#: build/models.py:73 order/templates/order/purchase_order_detail.html:174 #: templates/js/bom.js:181 templates/js/build.js:493 msgid "Reference" msgstr "Referenz" #: build/models.py:80 build/templates/build/detail.html:19 +#: company/templates/company/detail.html:23 #: company/templates/company/supplier_part_base.html:61 #: company/templates/company/supplier_part_detail.html:27 -#: order/templates/order/purchase_order_detail.html:160 +#: order/templates/order/purchase_order_detail.html:161 #: part/templates/part/detail.html:51 part/templates/part/set_category.html:14 #: templates/InvenTree/search.html:147 templates/js/bom.js:174 #: templates/js/bom.js:499 templates/js/build.js:642 templates/js/company.js:56 -#: templates/js/order.js:167 templates/js/order.js:249 templates/js/part.js:188 +#: templates/js/order.js:168 templates/js/order.js:250 templates/js/part.js:188 #: templates/js/part.js:271 templates/js/part.js:391 templates/js/part.js:572 #: templates/js/stock.js:494 templates/js/stock.js:706 msgid "Description" @@ -442,10 +453,10 @@ msgstr "Bestellung, die diesem Bau zugwiesen ist" #: build/models.py:97 build/templates/build/auto_allocate.html:16 #: build/templates/build/build_base.html:73 -#: build/templates/build/detail.html:24 order/models.py:519 +#: build/templates/build/detail.html:24 order/models.py:530 #: order/templates/order/order_wizard/select_parts.html:30 #: order/templates/order/purchase_order_detail.html:148 -#: order/templates/order/receive_parts.html:19 part/models.py:294 +#: order/templates/order/receive_parts.html:19 part/models.py:315 #: part/templates/part/part_app_base.html:7 part/templates/part/related.html:26 #: part/templates/part/set_category.html:13 templates/InvenTree/search.html:133 #: templates/js/barcode.js:336 templates/js/bom.js:147 templates/js/bom.js:484 @@ -535,13 +546,13 @@ msgstr "Chargennummer für diese Bau-Ausgabe" msgid "External Link" msgstr "Externer Link" -#: build/models.py:177 part/models.py:609 stock/models.py:386 +#: build/models.py:177 part/models.py:672 stock/models.py:386 msgid "Link to external URL" msgstr "Link zu einer externen URL" -#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:314 +#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:344 #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 -#: order/templates/order/purchase_order_detail.html:203 +#: order/templates/order/purchase_order_detail.html:213 #: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 #: stock/forms.py:307 stock/forms.py:339 stock/forms.py:367 stock/models.py:448 #: stock/models.py:1432 stock/templates/stock/tabs.html:26 @@ -597,11 +608,11 @@ msgid "Allocated quantity ({n}) must not exceed available quantity ({q})" msgstr "" "zugewiesene Anzahl ({n}) darf nicht die verfügbare ({q}) Anzahl überschreiten" -#: build/models.py:908 order/models.py:603 +#: build/models.py:908 order/models.py:614 msgid "StockItem is over-allocated" msgstr "Zu viele Lagerobjekte zugewiesen" -#: build/models.py:912 order/models.py:606 +#: build/models.py:912 order/models.py:617 msgid "Allocation quantity must be greater than zero" msgstr "Anzahl muss größer null sein" @@ -779,7 +790,7 @@ msgstr "Bau-Status" #: order/templates/order/receive_parts.html:24 #: stock/templates/stock/item_base.html:312 templates/InvenTree/search.html:175 #: templates/js/barcode.js:42 templates/js/build.js:675 -#: templates/js/order.js:172 templates/js/order.js:254 +#: templates/js/order.js:173 templates/js/order.js:255 #: templates/js/stock.js:557 templates/js/stock.js:961 msgid "Status" msgstr "Status" @@ -790,13 +801,13 @@ msgid "Progress" msgstr "" #: build/templates/build/build_base.html:101 -#: build/templates/build/detail.html:82 order/models.py:517 +#: build/templates/build/detail.html:82 order/models.py:528 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:33 #: order/templates/order/sales_order_notes.html:10 #: order/templates/order/sales_order_ship.html:25 #: part/templates/part/allocation.html:27 -#: stock/templates/stock/item_base.html:221 templates/js/order.js:221 +#: stock/templates/stock/item_base.html:221 templates/js/order.js:222 msgid "Sales Order" msgstr "Bestellung" @@ -1035,7 +1046,7 @@ msgstr "Lagerbestand dem Bau zuweisen" msgid "Create Build Output" msgstr "Bau-Ausgabe" -#: build/views.py:207 stock/models.py:827 stock/views.py:1647 +#: build/views.py:207 stock/models.py:827 stock/views.py:1660 #, fuzzy #| msgid "Serial numbers already exist: " msgid "Serial numbers already exist" @@ -1057,7 +1068,7 @@ msgstr "Bau entfernt" msgid "Confirm unallocation of build stock" msgstr "Zuweisungsaufhebung bestätigen" -#: build/views.py:303 build/views.py:388 stock/views.py:413 +#: build/views.py:303 build/views.py:388 stock/views.py:417 msgid "Check the confirmation box" msgstr "Bestätigungsbox bestätigen" @@ -1174,8 +1185,8 @@ msgstr "Bauobjekt aktualisiert" msgid "Add Build Order Attachment" msgstr "Auftragsanhang hinzufügen" -#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:166 -#: stock/views.py:176 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:168 +#: stock/views.py:180 msgid "Added attachment" msgstr "Anhang hinzugefügt" @@ -1191,205 +1202,221 @@ msgstr "Anhang aktualisiert" msgid "Delete Attachment" msgstr "Anhang löschen" -#: build/views.py:1122 order/views.py:240 order/views.py:255 stock/views.py:234 +#: build/views.py:1122 order/views.py:240 order/views.py:255 stock/views.py:238 msgid "Deleted attachment" msgstr "Anhang gelöscht" -#: common/models.py:55 +#: common/models.py:56 #, fuzzy #| msgid "Instance Name" msgid "InvenTree Instance Name" msgstr "Instanzname" -#: common/models.py:57 +#: common/models.py:58 #, fuzzy #| msgid "Brief description of the build" msgid "String descriptor for the server instance" msgstr "Kurze Beschreibung des Baus" -#: common/models.py:61 company/models.py:89 company/models.py:90 +#: common/models.py:62 company/models.py:95 company/models.py:96 msgid "Company name" msgstr "Firmenname" -#: common/models.py:62 +#: common/models.py:63 #, fuzzy #| msgid "Company name" msgid "Internal company name" msgstr "Firmenname" -#: common/models.py:67 +#: common/models.py:68 #, fuzzy #| msgid "Delete Currency" msgid "Default Currency" msgstr "Währung entfernen" -#: common/models.py:68 +#: common/models.py:69 #, fuzzy #| msgid "Delete Currency" msgid "Default currency" msgstr "Währung entfernen" -#: common/models.py:74 +#: common/models.py:75 msgid "IPN Regex" msgstr "" -#: common/models.py:75 +#: common/models.py:76 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:79 +#: common/models.py:80 #, fuzzy #| msgid "Duplicate Part" msgid "Allow Duplicate IPN" msgstr "Teil duplizieren" -#: common/models.py:80 +#: common/models.py:81 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:86 +#: common/models.py:87 #, fuzzy #| msgid "Import BOM data" msgid "Copy Part BOM Data" msgstr "Stückliste importieren" -#: common/models.py:87 +#: common/models.py:88 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:93 +#: common/models.py:94 #, fuzzy #| msgid "Parameters" msgid "Copy Part Parameter Data" msgstr "Parameter" -#: common/models.py:94 +#: common/models.py:95 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:100 +#: common/models.py:101 #, fuzzy #| msgid "Parameters" msgid "Copy Part Test Data" msgstr "Parameter" -#: common/models.py:101 +#: common/models.py:102 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:107 part/models.py:680 part/templates/part/detail.html:168 +#: common/models.py:108 +#, fuzzy +#| msgid "Edit Part Parameter Template" +msgid "Copy Category Parameter Templates" +msgstr "Teilparametervorlage bearbeiten" + +#: common/models.py:109 +msgid "Copy category parameter templates when creating a part" +msgstr "" + +#: common/models.py:115 part/models.py:743 part/templates/part/detail.html:168 #: templates/js/table_filters.js:264 msgid "Component" msgstr "Komponente" -#: common/models.py:108 +#: common/models.py:116 #, fuzzy #| msgid "Part can be used in assemblies" msgid "Parts can be used as sub-components by default" msgstr "Teil kann in Baugruppen benutzt werden" -#: common/models.py:114 part/models.py:691 part/templates/part/detail.html:188 +#: common/models.py:122 part/models.py:754 part/templates/part/detail.html:188 msgid "Purchaseable" msgstr "Kaufbar" -#: common/models.py:115 +#: common/models.py:123 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:121 part/models.py:696 part/templates/part/detail.html:198 +#: common/models.py:129 part/models.py:759 part/templates/part/detail.html:198 #: templates/js/table_filters.js:272 msgid "Salable" msgstr "Verkäuflich" -#: common/models.py:122 +#: common/models.py:130 msgid "Parts are salable by default" msgstr "" -#: common/models.py:128 part/models.py:686 part/templates/part/detail.html:178 +#: common/models.py:136 part/models.py:749 part/templates/part/detail.html:178 #: templates/js/table_filters.js:31 templates/js/table_filters.js:276 msgid "Trackable" msgstr "nachverfolgbar" -#: common/models.py:129 +#: common/models.py:137 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:135 +#: common/models.py:143 #, fuzzy #| msgid "Order Reference" msgid "Build Order Reference Prefix" msgstr "Bestellreferenz" -#: common/models.py:136 +#: common/models.py:144 #, fuzzy #| msgid "Order reference" msgid "Prefix value for build order reference" msgstr "Bestell-Referenz" -#: common/models.py:141 +#: common/models.py:149 #, fuzzy #| msgid "Order Reference" msgid "Build Order Reference Regex" msgstr "Bestellreferenz" -#: common/models.py:142 +#: common/models.py:150 msgid "Regular expression pattern for matching build order reference" msgstr "" -#: common/models.py:146 +#: common/models.py:154 #, fuzzy #| msgid "Sales Order Reference" msgid "Sales Order Reference Prefix" msgstr "Bestellungsreferenz" -#: common/models.py:147 +#: common/models.py:155 #, fuzzy #| msgid "Order reference" msgid "Prefix value for sales order reference" msgstr "Bestell-Referenz" -#: common/models.py:151 +#: common/models.py:159 #, fuzzy #| msgid "Order reference" msgid "Purchase Order Reference Prefix" msgstr "Bestell-Referenz" -#: common/models.py:152 +#: common/models.py:160 #, fuzzy #| msgid "Order reference" msgid "Prefix value for purchase order reference" msgstr "Bestell-Referenz" -#: common/models.py:357 +#: common/models.py:373 msgid "Settings key (must be unique - case insensitive" msgstr "" "Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird " "nicht beachtet)" -#: common/models.py:359 +#: common/models.py:375 msgid "Settings value" msgstr "Einstellungs-Wert" -#: common/models.py:415 +#: common/models.py:431 msgid "Value must be a boolean value" msgstr "" -#: common/models.py:429 +#: common/models.py:445 msgid "Key string must be unique" msgstr "Schlüsseltext muss eindeutig sein" -#: common/models.py:474 company/templates/company/supplier_part_pricing.html:80 +#: common/models.py:489 company/forms.py:113 +#, fuzzy +#| msgid "Price Breaks" +msgid "Price break quantity" +msgstr "Preisstaffelung" + +#: common/models.py:497 company/templates/company/supplier_part_pricing.html:80 #: part/templates/part/sale_prices.html:87 templates/js/bom.js:234 msgid "Price" msgstr "Preis" -#: common/models.py:475 +#: common/models.py:498 #, fuzzy #| msgid "Enter a valid quantity" msgid "Unit price at specified quantity" msgstr "Bitte eine gültige Anzahl eingeben" -#: common/models.py:498 +#: common/models.py:521 #, fuzzy #| msgid "Default Location" msgid "Default" @@ -1407,113 +1434,137 @@ msgstr "Währungs-Wert" msgid "Change Setting" msgstr "Einstellungen" -#: company/models.py:92 +#: company/forms.py:37 company/models.py:139 +#, fuzzy +#| msgid "Do you purchase items from this company?" +msgid "Default currency used for this company" +msgstr "Kaufen Sie Teile von dieser Firma?" + +#: company/forms.py:80 +#, fuzzy +#| msgid "Price" +msgid "Single Price" +msgstr "Preis" + +#: company/forms.py:82 +#, fuzzy +#| msgid "Invalid quantity provided" +msgid "Single quantity price" +msgstr "Keine gültige Menge" + +#: company/models.py:98 #, fuzzy #| msgid "Part description" msgid "Company description" msgstr "Beschreibung des Teils" -#: company/models.py:92 +#: company/models.py:98 msgid "Description of the company" msgstr "Firmenbeschreibung" -#: company/models.py:94 company/templates/company/company_base.html:57 -#: templates/js/company.js:61 +#: company/models.py:100 company/templates/company/company_base.html:57 +#: company/templates/company/detail.html:28 templates/js/company.js:61 msgid "Website" msgstr "Website" -#: company/models.py:94 +#: company/models.py:100 msgid "Company website URL" msgstr "Firmenwebsite" -#: company/models.py:97 company/templates/company/company_base.html:64 +#: company/models.py:103 company/templates/company/company_base.html:64 msgid "Address" msgstr "Adresse" -#: company/models.py:98 +#: company/models.py:104 msgid "Company address" msgstr "Firmenadresse" -#: company/models.py:101 +#: company/models.py:107 #, fuzzy #| msgid "Contact phone number" msgid "Phone number" msgstr "Kontakt-Tel." -#: company/models.py:102 +#: company/models.py:108 msgid "Contact phone number" msgstr "Kontakt-Tel." -#: company/models.py:105 company/templates/company/company_base.html:78 +#: company/models.py:111 company/templates/company/company_base.html:78 msgid "Email" msgstr "Email" -#: company/models.py:105 +#: company/models.py:111 msgid "Contact email address" msgstr "Kontakt-Email" -#: company/models.py:108 company/templates/company/company_base.html:85 +#: company/models.py:114 company/templates/company/company_base.html:85 msgid "Contact" msgstr "Kontakt" -#: company/models.py:109 +#: company/models.py:115 msgid "Point of contact" msgstr "Anlaufstelle" -#: company/models.py:111 +#: company/models.py:117 msgid "Link to external company information" msgstr "Link auf externe Firmeninformation" -#: company/models.py:123 +#: company/models.py:129 msgid "Do you sell items to this company?" msgstr "Verkaufen Sie Teile an diese Firma?" -#: company/models.py:125 +#: company/models.py:131 msgid "Do you purchase items from this company?" msgstr "Kaufen Sie Teile von dieser Firma?" -#: company/models.py:127 +#: company/models.py:133 msgid "Does this company manufacture parts?" msgstr "Produziert diese Firma Teile?" -#: company/models.py:283 stock/models.py:338 +#: company/models.py:137 company/templates/company/detail.html:37 +#, fuzzy +#| msgid "Edit Currency" +msgid "Currency" +msgstr "Währung bearbeiten" + +#: company/models.py:313 stock/models.py:338 #: stock/templates/stock/item_base.html:177 msgid "Base Part" msgstr "Basisteil" -#: company/models.py:288 +#: company/models.py:318 msgid "Select part" msgstr "Teil auswählen" -#: company/models.py:294 +#: company/models.py:324 msgid "Select supplier" msgstr "Zulieferer auswählen" -#: company/models.py:297 +#: company/models.py:327 msgid "Supplier stock keeping unit" msgstr "Stock Keeping Units (SKU) des Zulieferers" -#: company/models.py:304 +#: company/models.py:334 msgid "Select manufacturer" msgstr "Hersteller auswählen" -#: company/models.py:308 +#: company/models.py:338 msgid "Manufacturer part number" msgstr "Hersteller-Teilenummer" -#: company/models.py:310 +#: company/models.py:340 msgid "URL for external supplier part link" msgstr "Teil-URL des Zulieferers" -#: company/models.py:312 +#: company/models.py:342 msgid "Supplier part description" msgstr "Zuliefererbeschreibung des Teils" -#: company/models.py:316 +#: company/models.py:346 msgid "Minimum charge (e.g. stocking fee)" msgstr "Mindestpreis" -#: company/models.py:318 +#: company/models.py:348 msgid "Part packaging" msgstr "Teile-Packaging" @@ -1538,27 +1589,45 @@ msgstr "Firmendetails" msgid "Phone" msgstr "Telefon" -#: company/templates/company/detail.html:16 +#: company/templates/company/detail.html:18 +#, fuzzy +#| msgid "Company name" +msgid "Company Name" +msgstr "Firmenname" + +#: company/templates/company/detail.html:31 +#, fuzzy +#| msgid "No lines specified" +msgid "No website specified" +msgstr "Keine Zeilen angegeben" + +#: company/templates/company/detail.html:40 +#, fuzzy +#| msgid "Delete Currency" +msgid "Uses default currency" +msgstr "Währung entfernen" + +#: company/templates/company/detail.html:52 #: company/templates/company/supplier_part_base.html:84 #: company/templates/company/supplier_part_detail.html:30 part/bom.py:172 #: templates/js/company.js:44 templates/js/company.js:188 msgid "Manufacturer" msgstr "Hersteller" -#: company/templates/company/detail.html:21 +#: company/templates/company/detail.html:57 #: company/templates/company/supplier_part_base.html:74 #: company/templates/company/supplier_part_detail.html:21 #: order/templates/order/order_base.html:79 #: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:170 #: stock/templates/stock/item_base.html:287 templates/js/company.js:48 -#: templates/js/company.js:164 templates/js/order.js:154 +#: templates/js/company.js:164 templates/js/order.js:155 msgid "Supplier" msgstr "Zulieferer" -#: company/templates/company/detail.html:26 +#: company/templates/company/detail.html:62 #: order/templates/order/sales_order_base.html:81 stock/models.py:373 #: stock/models.py:374 stock/templates/stock/item_base.html:204 -#: templates/js/company.js:40 templates/js/order.js:236 +#: templates/js/company.js:40 templates/js/order.js:237 msgid "Customer" msgstr "Kunde" @@ -1609,21 +1678,21 @@ msgstr "Neues Teil" msgid "Create new Part" msgstr "Neues Teil hinzufügen" -#: company/templates/company/detail_part.html:69 company/views.py:55 +#: company/templates/company/detail_part.html:69 company/views.py:56 #: part/templates/part/supplier.html:47 msgid "New Supplier" msgstr "Neuer Zulieferer" -#: company/templates/company/detail_part.html:70 company/views.py:194 +#: company/templates/company/detail_part.html:70 company/views.py:195 msgid "Create new Supplier" msgstr "Neuen Zulieferer anlegen" -#: company/templates/company/detail_part.html:75 company/views.py:62 +#: company/templates/company/detail_part.html:75 company/views.py:63 #: part/templates/part/supplier.html:53 msgid "New Manufacturer" msgstr "Neuer Hersteller" -#: company/templates/company/detail_part.html:76 company/views.py:197 +#: company/templates/company/detail_part.html:76 company/views.py:198 msgid "Create new Manufacturer" msgstr "Neuen Hersteller anlegen" @@ -1658,7 +1727,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:7 #: order/templates/order/purchase_orders.html:12 #: part/templates/part/orders.html:9 part/templates/part/tabs.html:48 -#: templates/InvenTree/settings/tabs.html:28 templates/navbar.html:33 +#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:33 #: users/models.py:31 msgid "Purchase Orders" msgstr "Bestellungen" @@ -1678,7 +1747,7 @@ msgstr "Neue Bestellung" #: order/templates/order/sales_orders.html:7 #: order/templates/order/sales_orders.html:12 #: part/templates/part/sales_orders.html:9 part/templates/part/tabs.html:56 -#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:42 +#: templates/InvenTree/settings/tabs.html:34 templates/navbar.html:42 #: users/models.py:32 msgid "Sales Orders" msgstr "Bestellungen" @@ -1751,8 +1820,8 @@ msgstr "Teil bestellen" msgid "Pricing Information" msgstr "Preisinformationen ansehen" -#: company/templates/company/supplier_part_pricing.html:17 company/views.py:412 -#: part/templates/part/sale_prices.html:14 part/views.py:2350 +#: company/templates/company/supplier_part_pricing.html:17 company/views.py:459 +#: part/templates/part/sale_prices.html:14 part/views.py:2546 msgid "Add Price Break" msgstr "Preisstaffel hinzufügen" @@ -1788,7 +1857,7 @@ msgstr "Bepreisung" #: company/templates/company/supplier_part_tabs.html:8 #: company/templates/company/tabs.html:12 part/templates/part/tabs.html:18 #: stock/templates/stock/location.html:17 templates/InvenTree/search.html:155 -#: templates/InvenTree/settings/tabs.html:22 templates/js/part.js:192 +#: templates/InvenTree/settings/tabs.html:25 templates/js/part.js:192 #: templates/js/part.js:418 templates/js/stock.js:502 templates/navbar.html:22 #: users/models.py:29 msgid "Stock" @@ -1799,98 +1868,98 @@ msgid "Orders" msgstr "Bestellungen" #: company/templates/company/tabs.html:9 -#: order/templates/order/receive_parts.html:14 part/models.py:295 +#: order/templates/order/receive_parts.html:14 part/models.py:316 #: part/templates/part/cat_link.html:7 part/templates/part/category.html:94 #: part/templates/part/category_tabs.html:6 -#: templates/InvenTree/settings/tabs.html:19 templates/navbar.html:19 +#: templates/InvenTree/settings/tabs.html:22 templates/navbar.html:19 #: templates/stats.html:8 templates/stats.html:17 users/models.py:28 msgid "Parts" msgstr "Teile" -#: company/views.py:54 part/templates/part/tabs.html:42 +#: company/views.py:55 part/templates/part/tabs.html:42 #: templates/navbar.html:31 msgid "Suppliers" msgstr "Zulieferer" -#: company/views.py:61 templates/navbar.html:32 +#: company/views.py:62 templates/navbar.html:32 msgid "Manufacturers" msgstr "Hersteller" -#: company/views.py:68 templates/navbar.html:41 +#: company/views.py:69 templates/navbar.html:41 msgid "Customers" msgstr "Kunden" -#: company/views.py:69 +#: company/views.py:70 msgid "New Customer" msgstr "Neuer Kunde" -#: company/views.py:77 +#: company/views.py:78 msgid "Companies" msgstr "Firmen" -#: company/views.py:78 +#: company/views.py:79 msgid "New Company" msgstr "Neue Firma" -#: company/views.py:156 +#: company/views.py:157 msgid "Update Company Image" msgstr "Firmenbild aktualisieren" -#: company/views.py:162 +#: company/views.py:163 msgid "Updated company image" msgstr "Aktualisiertes Firmenbild" -#: company/views.py:172 +#: company/views.py:173 msgid "Edit Company" msgstr "Firma bearbeiten" -#: company/views.py:177 +#: company/views.py:178 msgid "Edited company information" msgstr "Firmeninformation bearbeitet" -#: company/views.py:200 +#: company/views.py:201 msgid "Create new Customer" msgstr "Neuen Kunden anlegen" -#: company/views.py:202 +#: company/views.py:203 msgid "Create new Company" msgstr "Neue Firma anlegen" -#: company/views.py:229 +#: company/views.py:230 msgid "Created new company" msgstr "Neue Firma angelegt" -#: company/views.py:239 +#: company/views.py:240 msgid "Delete Company" msgstr "Firma löschen" -#: company/views.py:245 +#: company/views.py:246 msgid "Company was deleted" msgstr "Firma gelöscht" -#: company/views.py:270 +#: company/views.py:271 msgid "Edit Supplier Part" msgstr "Zuliefererteil bearbeiten" -#: company/views.py:280 templates/js/stock.js:846 +#: company/views.py:289 templates/js/stock.js:846 msgid "Create new Supplier Part" msgstr "Neues Zuliefererteil anlegen" -#: company/views.py:341 +#: company/views.py:388 msgid "Delete Supplier Part" msgstr "Zuliefererteil entfernen" -#: company/views.py:418 part/views.py:2356 +#: company/views.py:465 part/views.py:2552 #, fuzzy #| msgid "Add Price Break" msgid "Added new price break" msgstr "Preisstaffel hinzufügen" -#: company/views.py:454 part/views.py:2400 +#: company/views.py:521 part/views.py:2596 msgid "Edit Price Break" msgstr "Preisstaffel bearbeiten" -#: company/views.py:470 part/views.py:2416 +#: company/views.py:537 part/views.py:2612 msgid "Delete Price Break" msgstr "Preisstaffel löschen" @@ -1955,118 +2024,131 @@ msgstr "Bestell-Referenz" msgid "Enter sales order number" msgstr "Auftrag stornieren" -#: order/models.py:108 +#: order/models.py:110 msgid "Order reference" msgstr "Bestell-Referenz" -#: order/models.py:110 +#: order/models.py:112 msgid "Order description" msgstr "Bestellungs-Beschreibung" -#: order/models.py:112 +#: order/models.py:114 msgid "Link to external page" msgstr "Link auf externe Seite" -#: order/models.py:122 +#: order/models.py:124 msgid "Order notes" msgstr "Bestell-Notizen" -#: order/models.py:140 order/models.py:326 +#: order/models.py:142 order/models.py:328 #, fuzzy #| msgid "Purchase Order Details" msgid "Purchase order status" msgstr "Bestelldetails" -#: order/models.py:148 +#: order/models.py:150 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:151 +#: order/models.py:153 msgid "Supplier order reference code" msgstr "Bestellreferenz" -#: order/models.py:160 +#: order/models.py:162 msgid "Date order was issued" msgstr "" -#: order/models.py:162 +#: order/models.py:164 #, fuzzy #| msgid "Mark order as complete" msgid "Date order was completed" msgstr "Bestellung als vollständig markieren" -#: order/models.py:185 order/models.py:267 part/views.py:1479 +#: order/models.py:187 order/models.py:269 part/views.py:1496 #: stock/models.py:244 stock/models.py:811 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" -#: order/models.py:190 +#: order/models.py:192 msgid "Part supplier must match PO supplier" msgstr "Teile-Zulieferer muss dem Zulieferer des Kaufvertrags entsprechen" -#: order/models.py:262 +#: order/models.py:264 msgid "Lines can only be received against an order marked as 'Placed'" msgstr "Nur Teile aufgegebener Bestllungen können empfangen werden" -#: order/models.py:322 +#: order/models.py:324 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:328 +#: order/models.py:330 msgid "Customer order reference code" msgstr "Bestellreferenz" -#: order/models.py:367 +#: order/models.py:369 msgid "SalesOrder cannot be shipped as it is not currently pending" msgstr "Bestellung kann nicht versendet werden weil sie nicht anhängig ist" -#: order/models.py:454 +#: order/models.py:456 msgid "Item quantity" msgstr "Anzahl" -#: order/models.py:456 +#: order/models.py:458 msgid "Line item reference" msgstr "Position - Referenz" -#: order/models.py:458 +#: order/models.py:460 msgid "Line item notes" msgstr "Position - Notizen" -#: order/models.py:484 order/templates/order/order_base.html:9 +#: order/models.py:486 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:24 #: stock/templates/stock/item_base.html:259 templates/js/order.js:139 msgid "Purchase Order" msgstr "Kaufvertrag" -#: order/models.py:497 +#: order/models.py:499 msgid "Supplier part" msgstr "Zulieferer-Teil" -#: order/models.py:500 +#: order/models.py:502 msgid "Number of items received" msgstr "Empfangene Objekt-Anzahl" -#: order/models.py:594 +#: order/models.py:509 stock/models.py:457 +#: stock/templates/stock/item_base.html:266 +#, fuzzy +#| msgid "Purchase Order" +msgid "Purchase Price" +msgstr "Kaufvertrag" + +#: order/models.py:510 +#, fuzzy +#| msgid "Purchase Order" +msgid "Unit purchase price" +msgstr "Kaufvertrag" + +#: order/models.py:605 msgid "Cannot allocate stock item to a line with a different part" msgstr "Kann Lagerobjekt keiner Zeile mit einem anderen Teil hinzufügen" -#: order/models.py:596 +#: order/models.py:607 msgid "Cannot allocate stock to a line without a part" msgstr "Kann Lagerobjekt keiner Zeile ohne Teil hinzufügen" -#: order/models.py:599 +#: order/models.py:610 msgid "Allocation quantity cannot exceed stock quantity" msgstr "zugewiesene Anzahl darf nicht die verfügbare Anzahl überschreiten" -#: order/models.py:609 +#: order/models.py:620 msgid "Quantity must be 1 for serialized stock item" msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein" -#: order/models.py:625 +#: order/models.py:636 msgid "Select stock item to allocate" msgstr "Lagerobjekt für Zuordnung auswählen" -#: order/models.py:628 +#: order/models.py:639 msgid "Enter stock allocation quantity" msgstr "Zuordnungsanzahl eingeben" @@ -2106,7 +2188,7 @@ msgstr "Bestellreferenz" msgid "Order Status" msgstr "Bestellstatus" -#: order/templates/order/order_base.html:85 templates/js/order.js:161 +#: order/templates/order/order_base.html:85 templates/js/order.js:162 msgid "Supplier Reference" msgstr "Zuliefererreferenz" @@ -2115,7 +2197,7 @@ msgid "Issued" msgstr "Aufgegeben" #: order/templates/order/order_base.html:111 -#: order/templates/order/purchase_order_detail.html:183 +#: order/templates/order/purchase_order_detail.html:193 #: order/templates/order/receive_parts.html:22 #: order/templates/order/sales_order_base.html:113 msgid "Received" @@ -2163,7 +2245,7 @@ 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/order.js:185 templates/js/order.js:272 +#: templates/js/order.js:186 templates/js/order.js:273 msgid "Items" msgstr "Positionen" @@ -2219,21 +2301,27 @@ msgstr "Neuen Lagerort anlegen" msgid "No line items found" msgstr "Keine Positionen gefunden" -#: order/templates/order/purchase_order_detail.html:165 +#: order/templates/order/purchase_order_detail.html:166 #: order/templates/order/receive_parts.html:20 msgid "Order Code" msgstr "Bestellnummer" -#: order/templates/order/purchase_order_detail.html:214 +#: order/templates/order/purchase_order_detail.html:184 +#, fuzzy +#| msgid "Price" +msgid "Unit Price" +msgstr "Preis" + +#: order/templates/order/purchase_order_detail.html:225 #: order/templates/order/sales_order_detail.html:285 msgid "Edit line item" msgstr "Position bearbeiten" -#: order/templates/order/purchase_order_detail.html:215 +#: order/templates/order/purchase_order_detail.html:226 msgid "Delete line item" msgstr "Position löschen" -#: order/templates/order/purchase_order_detail.html:220 +#: order/templates/order/purchase_order_detail.html:231 msgid "Receive line item" msgstr "Position empfangen" @@ -2272,7 +2360,7 @@ msgstr "Packliste" msgid "Sales Order Details" msgstr "Auftragsdetails" -#: order/templates/order/sales_order_base.html:87 templates/js/order.js:243 +#: order/templates/order/sales_order_base.html:87 templates/js/order.js:244 msgid "Customer Reference" msgstr "Kundenreferenz" @@ -2537,103 +2625,103 @@ msgstr "Fehler beim Lesen der Stückliste (ungültige Daten)" msgid "Error reading BOM file (incorrect row size)" msgstr "Fehler beim Lesen der Stückliste (ungültige Zeilengröße)" -#: part/forms.py:60 stock/forms.py:255 +#: part/forms.py:61 stock/forms.py:255 msgid "File Format" msgstr "Dateiformat" -#: part/forms.py:60 stock/forms.py:255 +#: part/forms.py:61 stock/forms.py:255 msgid "Select output file format" msgstr "Ausgabe-Dateiformat auswählen" -#: part/forms.py:62 +#: part/forms.py:63 msgid "Cascading" msgstr "Kaskadierend" -#: part/forms.py:62 +#: part/forms.py:63 msgid "Download cascading / multi-level BOM" msgstr "Kaskadierende Stückliste herunterladen" -#: part/forms.py:64 +#: part/forms.py:65 msgid "Levels" msgstr "" -#: part/forms.py:64 +#: part/forms.py:65 msgid "Select maximum number of BOM levels to export (0 = all levels)" msgstr "" -#: part/forms.py:66 +#: part/forms.py:67 #, fuzzy #| msgid "New Parameter" msgid "Include Parameter Data" msgstr "Neuer Parameter" -#: part/forms.py:66 +#: part/forms.py:67 msgid "Include part parameters data in exported BOM" msgstr "" -#: part/forms.py:68 +#: part/forms.py:69 #, fuzzy #| msgid "Include stock in sublocations" msgid "Include Stock Data" msgstr "Bestand in Unterlagerorten einschließen" -#: part/forms.py:68 +#: part/forms.py:69 #, fuzzy #| msgid "Include parts in subcategories" msgid "Include part stock data in exported BOM" msgstr "Teile in Unterkategorien einschließen" -#: part/forms.py:70 +#: part/forms.py:71 #, fuzzy #| msgid "New Supplier Part" msgid "Include Supplier Data" msgstr "Neues Zulieferer-Teil" -#: part/forms.py:70 +#: part/forms.py:71 msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:91 part/models.py:1644 +#: part/forms.py:92 part/models.py:1715 msgid "Parent Part" msgstr "Ausgangsteil" -#: part/forms.py:92 part/templates/part/bom_duplicate.html:7 +#: part/forms.py:93 part/templates/part/bom_duplicate.html:7 #, fuzzy #| msgid "Select parent part" msgid "Select parent part to copy BOM from" msgstr "Ausgangsteil auswählen" -#: part/forms.py:98 +#: part/forms.py:99 #, fuzzy #| msgid "Select from existing images" msgid "Clear existing BOM items" msgstr "Aus vorhandenen Bildern auswählen" -#: part/forms.py:103 +#: part/forms.py:104 #, fuzzy #| msgid "Confim BOM item deletion" msgid "Confirm BOM duplication" msgstr "Löschung von BOM-Position bestätigen" -#: part/forms.py:121 +#: part/forms.py:122 msgid "Confirm that the BOM is correct" msgstr "Bestätigen, dass die Stückliste korrekt ist" -#: part/forms.py:133 +#: part/forms.py:134 msgid "Select BOM file to upload" msgstr "Stücklisten-Datei zum Upload auswählen" -#: part/forms.py:152 +#: part/forms.py:153 #, fuzzy #| msgid "Delete Parts" msgid "Related Part" msgstr "Teile löschen" -#: part/forms.py:171 +#: part/forms.py:172 msgid "Select part category" msgstr "Teilekategorie wählen" -#: part/forms.py:187 +#: part/forms.py:188 #, fuzzy #| msgid "Perform 'deep copy' which will duplicate all BOM data for this part" msgid "Duplicate all BOM data for this part" @@ -2641,181 +2729,206 @@ msgstr "" "Tiefe Kopie ausführen. Dies wird alle Daten der Stückliste für dieses Teil " "duplizieren" -#: part/forms.py:188 +#: part/forms.py:189 msgid "Copy BOM" msgstr "" -#: part/forms.py:193 +#: part/forms.py:194 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:194 +#: part/forms.py:195 #, fuzzy #| msgid "Parameters" msgid "Copy Parameters" msgstr "Parameter" -#: part/forms.py:199 +#: part/forms.py:200 msgid "Confirm part creation" msgstr "Erstellen des Teils bestätigen" -#: part/forms.py:296 +#: part/forms.py:205 +#, fuzzy +#| msgid "No part parameter templates found" +msgid "Include category parameter templates" +msgstr "Keine Teilparametervorlagen gefunden" + +#: part/forms.py:210 +#, fuzzy +#| msgid "No part parameter templates found" +msgid "Include parent categories parameter templates" +msgstr "Keine Teilparametervorlagen gefunden" + +#: part/forms.py:285 +#, fuzzy +#| msgid "Parameter template name must be unique" +msgid "Add parameter template to same level categories" +msgstr "Vorlagen-Name des Parameters muss eindeutig sein" + +#: part/forms.py:289 +#, fuzzy +#| msgid "Parameter template name must be unique" +msgid "Add parameter template to all categories" +msgstr "Vorlagen-Name des Parameters muss eindeutig sein" + +#: part/forms.py:331 msgid "Input quantity for price calculation" msgstr "Eintragsmenge zur Preisberechnung" -#: part/models.py:67 +#: part/models.py:68 msgid "Default location for parts in this category" msgstr "Standard-Standort für Teile dieser Kategorie" -#: part/models.py:70 +#: part/models.py:71 msgid "Default keywords for parts in this category" msgstr "Standard-Stichworte für Teile dieser Kategorie" -#: part/models.py:76 part/templates/part/part_app_base.html:9 +#: part/models.py:77 part/models.py:1760 +#: part/templates/part/part_app_base.html:9 msgid "Part Category" msgstr "Teilkategorie" -#: part/models.py:77 part/templates/part/category.html:18 +#: part/models.py:78 part/templates/part/category.html:18 #: part/templates/part/category.html:89 templates/stats.html:12 msgid "Part Categories" msgstr "Teile-Kategorien" -#: part/models.py:346 part/models.py:356 +#: part/models.py:408 part/models.py:418 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "Teil '{p1}' wird in Stückliste für Teil '{p2}' benutzt (rekursiv)" -#: part/models.py:453 +#: part/models.py:515 #, fuzzy #| msgid "No serial numbers found" msgid "Next available serial numbers are" msgstr "Keine Seriennummern gefunden" -#: part/models.py:457 +#: part/models.py:519 msgid "Next available serial number is" msgstr "" -#: part/models.py:462 +#: part/models.py:524 #, fuzzy #| msgid "Empty serial number string" msgid "Most recent serial number is" msgstr "Keine Seriennummer angegeben" -#: part/models.py:541 +#: part/models.py:603 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:552 +#: part/models.py:614 msgid "Part must be unique for name, IPN and revision" msgstr "Namen, Teile- und Revisionsnummern müssen eindeutig sein" -#: part/models.py:581 part/templates/part/detail.html:19 +#: part/models.py:644 part/templates/part/detail.html:19 msgid "Part name" msgstr "Name des Teils" -#: part/models.py:585 +#: part/models.py:648 msgid "Is this part a template part?" msgstr "Ist dieses Teil eine Vorlage?" -#: part/models.py:594 +#: part/models.py:657 msgid "Is this part a variant of another part?" msgstr "Ist dieses Teil eine Variante eines anderen Teils?" -#: part/models.py:596 +#: part/models.py:659 msgid "Part description" msgstr "Beschreibung des Teils" -#: part/models.py:598 +#: part/models.py:661 msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:603 +#: part/models.py:666 msgid "Part category" msgstr "Teile-Kategorie" -#: part/models.py:605 +#: part/models.py:668 msgid "Internal Part Number" msgstr "Interne Teilenummer" -#: part/models.py:607 +#: part/models.py:670 msgid "Part revision or version number" msgstr "Revisions- oder Versionsnummer" -#: part/models.py:621 +#: part/models.py:684 msgid "Where is this item normally stored?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: part/models.py:665 +#: part/models.py:728 msgid "Default supplier part" msgstr "Standard-Zulieferer?" -#: part/models.py:668 +#: part/models.py:731 msgid "Minimum allowed stock level" msgstr "Minimal zulässiger Lagerbestand" -#: part/models.py:670 +#: part/models.py:733 msgid "Stock keeping units for this part" msgstr "Stock Keeping Units (SKU) für dieses Teil" -#: part/models.py:674 part/templates/part/detail.html:158 +#: part/models.py:737 part/templates/part/detail.html:158 #: templates/js/table_filters.js:260 msgid "Assembly" msgstr "Baugruppe" -#: part/models.py:675 +#: part/models.py:738 msgid "Can this part be built from other parts?" msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?" -#: part/models.py:681 +#: part/models.py:744 msgid "Can this part be used to build other parts?" msgstr "Kann dieses Teil zum Bau von anderen genutzt werden?" -#: part/models.py:687 +#: part/models.py:750 msgid "Does this part have tracking for unique items?" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" -#: part/models.py:692 +#: part/models.py:755 msgid "Can this part be purchased from external suppliers?" msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?" -#: part/models.py:697 +#: part/models.py:760 msgid "Can this part be sold to customers?" msgstr "Kann dieses Teil an Kunden verkauft werden?" -#: part/models.py:701 part/templates/part/detail.html:215 +#: part/models.py:764 part/templates/part/detail.html:215 #: templates/js/table_filters.js:19 templates/js/table_filters.js:55 #: templates/js/table_filters.js:186 templates/js/table_filters.js:243 msgid "Active" msgstr "Aktiv" -#: part/models.py:702 +#: part/models.py:765 msgid "Is this part active?" msgstr "Ist dieses Teil aktiv?" -#: part/models.py:706 part/templates/part/detail.html:138 +#: part/models.py:769 part/templates/part/detail.html:138 #: templates/js/table_filters.js:27 msgid "Virtual" msgstr "Virtuell" -#: part/models.py:707 +#: part/models.py:770 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ist dieses Teil virtuell, wie zum Beispiel eine Software oder Lizenz?" -#: part/models.py:709 +#: part/models.py:772 msgid "Part notes - supports Markdown formatting" msgstr "Bemerkungen - unterstüzt Markdown-Formatierung" -#: part/models.py:711 +#: part/models.py:774 msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" -#: part/models.py:1517 +#: part/models.py:1588 #, fuzzy #| msgid "Stock item cannot be created for a template Part" msgid "Test templates can only be created for trackable parts" msgstr "Lagerobjekt kann nicht für Vorlagen-Teile angelegt werden" -#: part/models.py:1534 +#: part/models.py:1605 #, fuzzy #| msgid "" #| "A stock item with this serial number already exists for template part " @@ -2825,133 +2938,140 @@ msgstr "" "Ein Teil mit dieser Seriennummer existiert bereits für die Teilevorlage " "{part}" -#: part/models.py:1553 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1624 templates/js/part.js:567 templates/js/stock.js:92 #, fuzzy #| msgid "Instance Name" msgid "Test Name" msgstr "Instanzname" -#: part/models.py:1554 +#: part/models.py:1625 #, fuzzy #| msgid "Serial number for this item" msgid "Enter a name for the test" msgstr "Seriennummer für dieses Teil" -#: part/models.py:1559 +#: part/models.py:1630 #, fuzzy #| msgid "Description" msgid "Test Description" msgstr "Beschreibung" -#: part/models.py:1560 +#: part/models.py:1631 #, fuzzy #| msgid "Brief description of the build" msgid "Enter description for this test" msgstr "Kurze Beschreibung des Baus" -#: part/models.py:1565 templates/js/part.js:576 +#: part/models.py:1636 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "benötigt" -#: part/models.py:1566 +#: part/models.py:1637 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1571 templates/js/part.js:584 +#: part/models.py:1642 templates/js/part.js:584 #, fuzzy #| msgid "Required Parts" msgid "Requires Value" msgstr "benötigte Teile" -#: part/models.py:1572 +#: part/models.py:1643 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1577 templates/js/part.js:591 +#: part/models.py:1648 templates/js/part.js:591 #, fuzzy #| msgid "Delete Attachment" msgid "Requires Attachment" msgstr "Anhang löschen" -#: part/models.py:1578 +#: part/models.py:1649 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1611 +#: part/models.py:1682 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:1616 +#: part/models.py:1687 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:1618 +#: part/models.py:1689 msgid "Parameter Units" msgstr "Parameter Einheit" -#: part/models.py:1646 +#: part/models.py:1717 part/models.py:1765 +#: templates/InvenTree/settings/category.html:62 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:1648 +#: part/models.py:1719 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:1685 +#: part/models.py:1769 +#, fuzzy +#| msgid "Parameter Value" +msgid "Default Parameter Value" +msgstr "Parameter Wert" + +#: part/models.py:1799 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:1693 +#: part/models.py:1807 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:1699 +#: part/models.py:1813 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:1701 +#: part/models.py:1815 #, fuzzy #| msgid "Confim BOM item deletion" msgid "This BOM item is optional" msgstr "Löschung von BOM-Position bestätigen" -#: part/models.py:1704 +#: part/models.py:1818 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:1707 +#: part/models.py:1821 msgid "BOM item reference" msgstr "Referenz des Objekts auf der Stückliste" -#: part/models.py:1710 +#: part/models.py:1824 msgid "BOM item notes" msgstr "Notizen zum Stücklisten-Objekt" -#: part/models.py:1712 +#: part/models.py:1826 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:1779 part/views.py:1485 part/views.py:1537 +#: part/models.py:1893 part/views.py:1502 part/views.py:1554 #: stock/models.py:234 #, fuzzy #| msgid "Overage must be an integer value or a percentage" msgid "Quantity must be integer value for trackable parts" msgstr "Überschuss muss eine Ganzzahl oder ein Prozentwert sein" -#: part/models.py:1795 +#: part/models.py:1909 #, fuzzy #| msgid "New BOM Item" msgid "BOM Item" msgstr "Neue Stücklistenposition" -#: part/models.py:1910 +#: part/models.py:2024 #, fuzzy #| msgid "Select a part" msgid "Select Related Part" msgstr "Teil auswählen" -#: part/models.py:1942 +#: part/models.py:2056 msgid "" "Error creating relationship: check that the part is not related to itself " "and that the relationship is unique" @@ -3047,7 +3167,7 @@ msgstr "Stückliste validieren" msgid "Validate" msgstr "BOM validieren" -#: part/templates/part/bom.html:62 part/views.py:1776 +#: part/templates/part/bom.html:62 part/views.py:1793 msgid "Export Bill of Materials" msgstr "Stückliste exportieren" @@ -3169,7 +3289,7 @@ msgstr "Neuen Bau beginnen" msgid "All parts" msgstr "Alle Teile" -#: part/templates/part/category.html:24 part/views.py:2167 +#: part/templates/part/category.html:24 part/views.py:2184 msgid "Create new part category" msgstr "Teilkategorie anlegen" @@ -3259,7 +3379,7 @@ msgstr "Teilkategorie anlegen" msgid "Create new Part Category" msgstr "Teilkategorie anlegen" -#: part/templates/part/category.html:216 stock/views.py:1338 +#: part/templates/part/category.html:216 stock/views.py:1342 msgid "Create new Stock Location" msgstr "Neuen Lager-Standort erstellen" @@ -3331,7 +3451,7 @@ msgstr "Einheiten" msgid "Minimum Stock" msgstr "Minimaler Lagerbestand" -#: part/templates/part/detail.html:114 templates/js/order.js:262 +#: part/templates/part/detail.html:114 templates/js/order.js:263 msgid "Creation Date" msgstr "Erstelldatum" @@ -3428,7 +3548,9 @@ msgstr "Teilparameter" msgid "Add new parameter" msgstr "Parameter hinzufügen" -#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:37 +#: part/templates/part/params.html:15 +#: templates/InvenTree/settings/category.html:29 +#: templates/InvenTree/settings/part.html:38 msgid "New Parameter" msgstr "Neuer Parameter" @@ -3438,7 +3560,7 @@ msgid "Value" msgstr "Wert" #: part/templates/part/params.html:41 part/templates/part/related.html:41 -#: part/templates/part/supplier.html:19 users/models.py:148 +#: part/templates/part/supplier.html:19 users/models.py:152 msgid "Delete" msgstr "Löschen" @@ -3688,230 +3810,248 @@ msgstr "Neues Teil hinzufügen" msgid "New Variant" msgstr "Varianten" -#: part/views.py:82 +#: part/views.py:84 #, fuzzy #| msgid "Allocated Parts" msgid "Add Related Part" msgstr "Zugeordnete Teile" -#: part/views.py:138 +#: part/views.py:140 #, fuzzy #| msgid "Delete Supplier Part" msgid "Delete Related Part" msgstr "Zuliefererteil entfernen" -#: part/views.py:150 +#: part/views.py:152 msgid "Add part attachment" msgstr "Teilanhang hinzufügen" -#: part/views.py:205 templates/attachment_table.html:34 +#: part/views.py:207 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "Anhang bearbeiten" -#: part/views.py:211 +#: part/views.py:213 msgid "Part attachment updated" msgstr "Teilanhang aktualisiert" -#: part/views.py:226 +#: part/views.py:228 msgid "Delete Part Attachment" msgstr "Teilanhang löschen" -#: part/views.py:234 +#: part/views.py:236 msgid "Deleted part attachment" msgstr "Teilanhang gelöscht" -#: part/views.py:243 +#: part/views.py:245 #, fuzzy #| msgid "Create Part Parameter Template" msgid "Create Test Template" msgstr "Teilparametervorlage anlegen" -#: part/views.py:272 +#: part/views.py:274 #, fuzzy #| msgid "Edit Template" msgid "Edit Test Template" msgstr "Vorlage bearbeiten" -#: part/views.py:288 +#: part/views.py:290 #, fuzzy #| msgid "Delete Template" msgid "Delete Test Template" msgstr "Vorlage löschen" -#: part/views.py:297 +#: part/views.py:299 msgid "Set Part Category" msgstr "Teilkategorie auswählen" -#: part/views.py:347 +#: part/views.py:349 #, python-brace-format msgid "Set category for {n} parts" msgstr "Kategorie für {n} Teile setzen" -#: part/views.py:382 +#: part/views.py:384 msgid "Create Variant" msgstr "Variante anlegen" -#: part/views.py:464 +#: part/views.py:466 msgid "Duplicate Part" msgstr "Teil duplizieren" -#: part/views.py:471 +#: part/views.py:473 msgid "Copied part" msgstr "Teil kopiert" -#: part/views.py:525 part/views.py:655 +#: part/views.py:527 part/views.py:661 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:590 templates/js/stock.js:840 +#: part/views.py:592 templates/js/stock.js:840 msgid "Create New Part" msgstr "Neues Teil anlegen" -#: part/views.py:597 +#: part/views.py:599 msgid "Created new part" msgstr "Neues Teil angelegt" -#: part/views.py:813 +#: part/views.py:830 msgid "Part QR Code" msgstr "Teil-QR-Code" -#: part/views.py:832 +#: part/views.py:849 msgid "Upload Part Image" msgstr "Teilbild hochladen" -#: part/views.py:840 part/views.py:877 +#: part/views.py:857 part/views.py:894 msgid "Updated part image" msgstr "Teilbild aktualisiert" -#: part/views.py:849 +#: part/views.py:866 msgid "Select Part Image" msgstr "Teilbild auswählen" -#: part/views.py:880 +#: part/views.py:897 msgid "Part image not found" msgstr "Teilbild nicht gefunden" -#: part/views.py:891 +#: part/views.py:908 msgid "Edit Part Properties" msgstr "Teileigenschaften bearbeiten" -#: part/views.py:918 +#: part/views.py:935 #, fuzzy #| msgid "Duplicate Part" msgid "Duplicate BOM" msgstr "Teil duplizieren" -#: part/views.py:949 +#: part/views.py:966 #, fuzzy #| msgid "Confirm unallocation of build stock" msgid "Confirm duplication of BOM from parent" msgstr "Zuweisungsaufhebung bestätigen" -#: part/views.py:970 +#: part/views.py:987 msgid "Validate BOM" msgstr "BOM validieren" -#: part/views.py:993 +#: part/views.py:1010 #, fuzzy #| msgid "Confirm that the BOM is correct" msgid "Confirm that the BOM is valid" msgstr "Bestätigen, dass die Stückliste korrekt ist" -#: part/views.py:1004 +#: part/views.py:1021 #, fuzzy #| msgid "Validate Bill of Materials" msgid "Validated Bill of Materials" msgstr "Stückliste validieren" -#: part/views.py:1138 +#: part/views.py:1155 msgid "No BOM file provided" msgstr "Keine Stückliste angegeben" -#: part/views.py:1488 +#: part/views.py:1505 msgid "Enter a valid quantity" msgstr "Bitte eine gültige Anzahl eingeben" -#: part/views.py:1513 part/views.py:1516 +#: part/views.py:1530 part/views.py:1533 msgid "Select valid part" msgstr "Bitte ein gültiges Teil auswählen" -#: part/views.py:1522 +#: part/views.py:1539 msgid "Duplicate part selected" msgstr "Teil doppelt ausgewählt" -#: part/views.py:1560 +#: part/views.py:1577 msgid "Select a part" msgstr "Teil auswählen" -#: part/views.py:1566 +#: part/views.py:1583 #, fuzzy #| msgid "Select part to be used in BOM" msgid "Selected part creates a circular BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/views.py:1570 +#: part/views.py:1587 msgid "Specify quantity" msgstr "Anzahl angeben" -#: part/views.py:1826 +#: part/views.py:1843 msgid "Confirm Part Deletion" msgstr "Löschen des Teils bestätigen" -#: part/views.py:1835 +#: part/views.py:1852 msgid "Part was deleted" msgstr "Teil wurde gelöscht" -#: part/views.py:1844 +#: part/views.py:1861 msgid "Part Pricing" msgstr "Teilbepreisung" -#: part/views.py:1958 +#: part/views.py:1975 msgid "Create Part Parameter Template" msgstr "Teilparametervorlage anlegen" -#: part/views.py:1968 +#: part/views.py:1985 msgid "Edit Part Parameter Template" msgstr "Teilparametervorlage bearbeiten" -#: part/views.py:1977 +#: part/views.py:1994 msgid "Delete Part Parameter Template" msgstr "Teilparametervorlage löschen" -#: part/views.py:1987 +#: part/views.py:2004 msgid "Create Part Parameter" msgstr "Teilparameter anlegen" -#: part/views.py:2039 +#: part/views.py:2056 msgid "Edit Part Parameter" msgstr "Teilparameter bearbeiten" -#: part/views.py:2055 +#: part/views.py:2072 msgid "Delete Part Parameter" msgstr "Teilparameter löschen" -#: part/views.py:2114 +#: part/views.py:2131 msgid "Edit Part Category" msgstr "Teilkategorie bearbeiten" -#: part/views.py:2151 +#: part/views.py:2168 msgid "Delete Part Category" msgstr "Teilkategorie löschen" -#: part/views.py:2159 +#: part/views.py:2176 msgid "Part category was deleted" msgstr "Teilekategorie wurde gelöscht" -#: part/views.py:2222 +#: part/views.py:2232 +#, fuzzy +#| msgid "Create Part Parameter Template" +msgid "Create Category Parameter Template" +msgstr "Teilparametervorlage anlegen" + +#: part/views.py:2335 +#, fuzzy +#| msgid "Edit Part Parameter Template" +msgid "Edit Category Parameter Template" +msgstr "Teilparametervorlage bearbeiten" + +#: part/views.py:2393 +#, fuzzy +#| msgid "Delete Part Parameter Template" +msgid "Delete Category Parameter Template" +msgstr "Teilparametervorlage löschen" + +#: part/views.py:2418 #, fuzzy #| msgid "Create BOM item" msgid "Create BOM Item" msgstr "BOM-Position anlegen" -#: part/views.py:2290 +#: part/views.py:2486 msgid "Edit BOM item" msgstr "BOM-Position beaarbeiten" -#: part/views.py:2340 +#: part/views.py:2536 msgid "Confim BOM item deletion" msgstr "Löschung von BOM-Position bestätigen" @@ -4019,7 +4159,7 @@ msgstr "Ziel-Lagerbestand" msgid "Add note (required)" msgstr "" -#: stock/forms.py:371 stock/views.py:916 stock/views.py:1114 +#: stock/forms.py:371 stock/views.py:920 stock/views.py:1118 msgid "Confirm stock adjustment" msgstr "Bestands-Anpassung bestätigen" @@ -4144,12 +4284,6 @@ msgstr "Objekt löschen wenn Lagerbestand aufgebraucht" msgid "Stock Item Notes" msgstr "Lagerobjekt-Notizen" -#: stock/models.py:457 stock/templates/stock/item_base.html:266 -#, fuzzy -#| msgid "Purchase Order" -msgid "Purchase Price" -msgstr "Kaufvertrag" - #: stock/models.py:458 msgid "Single unit purchase price at time of purchase" msgstr "" @@ -4635,7 +4769,7 @@ msgstr "Sind Sie sicher, dass Sie diesen Anhang löschen wollen?" msgid "The following stock items will be uninstalled" msgstr "Die folgenden Objekte werden erstellt" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:1310 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:1314 #, fuzzy #| msgid "Count Stock Items" msgid "Convert Stock Item" @@ -4673,260 +4807,260 @@ msgstr "Kinder" msgid "Installed Items" msgstr "Installiert in" -#: stock/views.py:119 +#: stock/views.py:123 msgid "Edit Stock Location" msgstr "Lagerobjekt-Standort bearbeiten" -#: stock/views.py:144 +#: stock/views.py:148 msgid "Stock Location QR code" msgstr "QR-Code für diesen Standort" -#: stock/views.py:163 +#: stock/views.py:167 #, fuzzy #| msgid "Add Attachment" msgid "Add Stock Item Attachment" msgstr "Anhang hinzufügen" -#: stock/views.py:210 +#: stock/views.py:214 #, fuzzy #| msgid "Edit Stock Item" msgid "Edit Stock Item Attachment" msgstr "Lagerobjekt bearbeiten" -#: stock/views.py:227 +#: stock/views.py:231 #, fuzzy #| msgid "Delete Part Attachment" msgid "Delete Stock Item Attachment" msgstr "Teilanhang löschen" -#: stock/views.py:244 +#: stock/views.py:248 #, fuzzy #| msgid "Item assigned to customer?" msgid "Assign to Customer" msgstr "Ist dieses Objekt einem Kunden zugeteilt?" -#: stock/views.py:254 +#: stock/views.py:258 msgid "Customer must be specified" msgstr "" -#: stock/views.py:278 +#: stock/views.py:282 #, fuzzy #| msgid "Part Stock" msgid "Return to Stock" msgstr "Teilbestand" -#: stock/views.py:288 +#: stock/views.py:292 #, fuzzy #| msgid "Include sublocations" msgid "Specify a valid location" msgstr "Unterlagerorte einschließen" -#: stock/views.py:299 +#: stock/views.py:303 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:309 +#: stock/views.py:313 #, fuzzy #| msgid "Select valid part" msgid "Select Label Template" msgstr "Bitte ein gültiges Teil auswählen" -#: stock/views.py:332 +#: stock/views.py:336 #, fuzzy #| msgid "Select valid part" msgid "Select valid label" msgstr "Bitte ein gültiges Teil auswählen" -#: stock/views.py:396 +#: stock/views.py:400 #, fuzzy #| msgid "Delete Template" msgid "Delete All Test Data" msgstr "Vorlage löschen" -#: stock/views.py:412 +#: stock/views.py:416 #, fuzzy #| msgid "Confirm Part Deletion" msgid "Confirm test data deletion" msgstr "Löschen des Teils bestätigen" -#: stock/views.py:432 +#: stock/views.py:436 msgid "Add Test Result" msgstr "" -#: stock/views.py:473 +#: stock/views.py:477 #, fuzzy #| msgid "Edit Template" msgid "Edit Test Result" msgstr "Vorlage bearbeiten" -#: stock/views.py:491 +#: stock/views.py:495 #, fuzzy #| msgid "Delete Template" msgid "Delete Test Result" msgstr "Vorlage löschen" -#: stock/views.py:503 +#: stock/views.py:507 #, fuzzy #| msgid "Delete Template" msgid "Select Test Report Template" msgstr "Vorlage löschen" -#: stock/views.py:518 +#: stock/views.py:522 #, fuzzy #| msgid "Select valid part" msgid "Select valid template" msgstr "Bitte ein gültiges Teil auswählen" -#: stock/views.py:571 +#: stock/views.py:575 msgid "Stock Export Options" msgstr "Lagerbestandsexportoptionen" -#: stock/views.py:693 +#: stock/views.py:697 msgid "Stock Item QR Code" msgstr "Lagerobjekt-QR-Code" -#: stock/views.py:719 +#: stock/views.py:723 #, fuzzy #| msgid "Installed in Stock Item" msgid "Install Stock Item" msgstr "In Lagerobjekt installiert" -#: stock/views.py:819 +#: stock/views.py:823 #, fuzzy #| msgid "Installed in Stock Item" msgid "Uninstall Stock Items" msgstr "In Lagerobjekt installiert" -#: stock/views.py:927 +#: stock/views.py:931 #, fuzzy #| msgid "Installed in Stock Item" msgid "Uninstalled stock items" msgstr "In Lagerobjekt installiert" -#: stock/views.py:952 +#: stock/views.py:956 msgid "Adjust Stock" msgstr "Lagerbestand anpassen" -#: stock/views.py:1062 +#: stock/views.py:1066 msgid "Move Stock Items" msgstr "Lagerobjekte bewegen" -#: stock/views.py:1063 +#: stock/views.py:1067 msgid "Count Stock Items" msgstr "Lagerobjekte zählen" -#: stock/views.py:1064 +#: stock/views.py:1068 msgid "Remove From Stock" msgstr "Aus Lagerbestand entfernen" -#: stock/views.py:1065 +#: stock/views.py:1069 msgid "Add Stock Items" msgstr "Lagerobjekte hinzufügen" -#: stock/views.py:1066 +#: stock/views.py:1070 msgid "Delete Stock Items" msgstr "Lagerobjekte löschen" -#: stock/views.py:1094 +#: stock/views.py:1098 msgid "Must enter integer value" msgstr "Nur Ganzzahl eingeben" -#: stock/views.py:1099 +#: stock/views.py:1103 msgid "Quantity must be positive" msgstr "Anzahl muss positiv sein" -#: stock/views.py:1106 +#: stock/views.py:1110 #, python-brace-format msgid "Quantity must not exceed {x}" msgstr "Anzahl darf {x} nicht überschreiten" -#: stock/views.py:1185 +#: stock/views.py:1189 #, python-brace-format msgid "Added stock to {n} items" msgstr "Vorrat zu {n} Lagerobjekten hinzugefügt" -#: stock/views.py:1200 +#: stock/views.py:1204 #, python-brace-format msgid "Removed stock from {n} items" msgstr "Vorrat von {n} Lagerobjekten entfernt" -#: stock/views.py:1213 +#: stock/views.py:1217 #, python-brace-format msgid "Counted stock for {n} items" msgstr "Bestand für {n} Objekte erfasst" -#: stock/views.py:1241 +#: stock/views.py:1245 msgid "No items were moved" msgstr "Keine Lagerobjekte wurden bewegt" -#: stock/views.py:1244 +#: stock/views.py:1248 #, python-brace-format msgid "Moved {n} items to {dest}" msgstr "{n} Teile nach {dest} bewegt" -#: stock/views.py:1263 +#: stock/views.py:1267 #, python-brace-format msgid "Deleted {n} stock items" msgstr "{n} Teile im Lager gelöscht" -#: stock/views.py:1275 +#: stock/views.py:1279 msgid "Edit Stock Item" msgstr "Lagerobjekt bearbeiten" -#: stock/views.py:1360 +#: stock/views.py:1364 msgid "Serialize Stock" msgstr "Lagerbestand erfassen" -#: stock/views.py:1454 templates/js/build.js:210 +#: stock/views.py:1458 templates/js/build.js:210 msgid "Create new Stock Item" msgstr "Neues Lagerobjekt hinzufügen" -#: stock/views.py:1555 +#: stock/views.py:1559 #, fuzzy #| msgid "Count stock items" msgid "Duplicate Stock Item" msgstr "Lagerobjekte zählen" -#: stock/views.py:1621 +#: stock/views.py:1634 msgid "Invalid quantity" msgstr "Ungültige Menge" -#: stock/views.py:1624 +#: stock/views.py:1637 #, fuzzy #| msgid "Quantity must be greater than zero" msgid "Quantity cannot be less than zero" msgstr "Anzahl muss größer Null sein" -#: stock/views.py:1628 +#: stock/views.py:1641 msgid "Invalid part selection" msgstr "Ungültige Teileauswahl" -#: stock/views.py:1676 +#: stock/views.py:1689 #, python-brace-format msgid "Created {n} new stock items" msgstr "{n} neue Lagerobjekte erstellt" -#: stock/views.py:1695 stock/views.py:1711 +#: stock/views.py:1708 stock/views.py:1724 msgid "Created new stock item" msgstr "Neues Lagerobjekt erstellt" -#: stock/views.py:1730 +#: stock/views.py:1743 msgid "Delete Stock Location" msgstr "Standort löschen" -#: stock/views.py:1744 +#: stock/views.py:1757 msgid "Delete Stock Item" msgstr "Lagerobjekt löschen" -#: stock/views.py:1756 +#: stock/views.py:1769 msgid "Delete Stock Tracking Entry" msgstr "Lagerbestands-Tracking-Eintrag löschen" -#: stock/views.py:1775 +#: stock/views.py:1788 msgid "Edit Stock Tracking Entry" msgstr "Lagerbestands-Tracking-Eintrag bearbeiten" -#: stock/views.py:1785 +#: stock/views.py:1798 msgid "Add Stock Tracking Entry" msgstr "Lagerbestands-Tracking-Eintrag hinzufügen" @@ -5020,6 +5154,40 @@ msgstr "Suche" msgid "Build Order Settings" msgstr "Bauaufträge" +#: templates/InvenTree/settings/category.html:9 +#, fuzzy +#| msgid "Category Details" +msgid "Category Settings" +msgstr "Kategorie-Details" + +#: templates/InvenTree/settings/category.html:25 +#, fuzzy +#| msgid "Edit Part Parameter Template" +msgid "Category Parameter Templates" +msgstr "Teilparametervorlage bearbeiten" + +#: templates/InvenTree/settings/category.html:52 +#, fuzzy +#| msgid "No part parameter templates found" +msgid "No category parameter templates found" +msgstr "Keine Teilparametervorlagen gefunden" + +#: templates/InvenTree/settings/category.html:67 +#, fuzzy +#| msgid "Default Location" +msgid "Default Value" +msgstr "Standard-Lagerort" + +#: templates/InvenTree/settings/category.html:70 +#: templates/InvenTree/settings/part.html:75 +msgid "Edit Template" +msgstr "Vorlage bearbeiten" + +#: templates/InvenTree/settings/category.html:71 +#: templates/InvenTree/settings/part.html:76 +msgid "Delete Template" +msgstr "Vorlage löschen" + #: templates/InvenTree/settings/global.html:10 #, fuzzy #| msgid "InvenTree Version" @@ -5038,24 +5206,16 @@ msgstr "Einstellungen" msgid "Part Options" msgstr "Quell-Standort" -#: templates/InvenTree/settings/part.html:33 +#: templates/InvenTree/settings/part.html:34 #, fuzzy #| msgid "Edit Part Parameter Template" msgid "Part Parameter Templates" msgstr "Teilparametervorlage bearbeiten" -#: templates/InvenTree/settings/part.html:54 +#: templates/InvenTree/settings/part.html:55 msgid "No part parameter templates found" msgstr "Keine Teilparametervorlagen gefunden" -#: templates/InvenTree/settings/part.html:74 -msgid "Edit Template" -msgstr "Vorlage bearbeiten" - -#: templates/InvenTree/settings/part.html:75 -msgid "Delete Template" -msgstr "Vorlage löschen" - #: templates/InvenTree/settings/po.html:9 #, fuzzy #| msgid "Purchase Order Details" @@ -5114,6 +5274,12 @@ msgstr "InvenTree-Version" msgid "Global" msgstr "" +#: templates/InvenTree/settings/tabs.html:19 +#, fuzzy +#| msgid "Part Categories" +msgid "Categories" +msgstr "Teile-Kategorien" + #: templates/InvenTree/settings/theme.html:10 #, fuzzy #| msgid "Settings" @@ -5491,15 +5657,15 @@ msgstr "Link" msgid "No purchase orders found" msgstr "Keine Bestellungen gefunden" -#: templates/js/order.js:180 templates/js/stock.js:677 +#: templates/js/order.js:181 templates/js/stock.js:677 msgid "Date" msgstr "Datum" -#: templates/js/order.js:210 +#: templates/js/order.js:211 msgid "No sales orders found" msgstr "Keine Aufträge gefunden" -#: templates/js/order.js:267 +#: templates/js/order.js:268 msgid "Shipment Date" msgstr "Versanddatum" @@ -6009,41 +6175,41 @@ msgstr "Revision" msgid "Important dates" msgstr "Stückliste importieren" -#: users/models.py:131 +#: users/models.py:135 msgid "Permission set" msgstr "" -#: users/models.py:139 +#: users/models.py:143 msgid "Group" msgstr "" -#: users/models.py:142 +#: users/models.py:146 msgid "View" msgstr "" -#: users/models.py:142 +#: users/models.py:146 msgid "Permission to view items" msgstr "" -#: users/models.py:144 +#: users/models.py:148 #, fuzzy #| msgid "Address" msgid "Add" msgstr "Adresse" -#: users/models.py:144 +#: users/models.py:148 msgid "Permission to add items" msgstr "" -#: users/models.py:146 +#: users/models.py:150 msgid "Change" msgstr "" -#: users/models.py:146 +#: users/models.py:150 msgid "Permissions to edit items" msgstr "" -#: users/models.py:148 +#: users/models.py:152 #, fuzzy #| msgid "Remove selected BOM items" msgid "Permission to delete items" @@ -6091,11 +6257,6 @@ msgstr "Ausgewählte Stücklistenpositionen entfernen" #~ msgid "New Currency" #~ msgstr "Währung entfernen" -#, fuzzy -#~| msgid "Edit Currency" -#~ msgid "Currency" -#~ msgstr "Währung bearbeiten" - #, fuzzy #~| msgid "Serial Number" #~ msgid "Serial Numbers" @@ -6274,9 +6435,6 @@ msgstr "Ausgewählte Stücklistenpositionen entfernen" #~ msgid "Base Price (Flat Fee)" #~ msgstr "Grundpreis" -#~ msgid "Price Breaks" -#~ msgstr "Preisstaffelung" - #~ msgid "New Price Break" #~ msgstr "Neue Preisstaffelung" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index 976e28c2c6..f6cb0f4604 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-11-10 13:31+0000\n" +"POT-Creation-Date: 2020-11-12 22:05+1100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -26,27 +26,31 @@ msgstr "" msgid "No matching action found" msgstr "" -#: InvenTree/forms.py:107 build/forms.py:82 build/forms.py:170 +#: InvenTree/forms.py:108 build/forms.py:82 build/forms.py:170 msgid "Confirm" msgstr "" -#: InvenTree/forms.py:123 +#: InvenTree/forms.py:124 msgid "Confirm item deletion" msgstr "" -#: InvenTree/forms.py:155 +#: InvenTree/forms.py:156 msgid "Enter new password" msgstr "" -#: InvenTree/forms.py:162 +#: InvenTree/forms.py:163 msgid "Confirm new password" msgstr "" -#: InvenTree/forms.py:197 +#: InvenTree/forms.py:198 msgid "Apply Theme" msgstr "" -#: InvenTree/helpers.py:361 order/models.py:187 order/models.py:269 +#: InvenTree/forms.py:228 +msgid "Select Category" +msgstr "" + +#: InvenTree/helpers.py:361 order/models.py:189 order/models.py:271 msgid "Invalid quantity provided" msgstr "" @@ -99,19 +103,19 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/settings.py:350 +#: InvenTree/settings.py:354 msgid "English" msgstr "" -#: InvenTree/settings.py:351 +#: InvenTree/settings.py:355 msgid "German" msgstr "" -#: InvenTree/settings.py:352 +#: InvenTree/settings.py:356 msgid "French" msgstr "" -#: InvenTree/settings.py:353 +#: InvenTree/settings.py:357 msgid "Polish" msgstr "" @@ -172,57 +176,61 @@ msgstr "" msgid "Production" msgstr "" -#: InvenTree/validators.py:39 +#: InvenTree/validators.py:22 +msgid "Not a valid currency code" +msgstr "" + +#: InvenTree/validators.py:50 msgid "Invalid character in part name" msgstr "" -#: InvenTree/validators.py:52 +#: InvenTree/validators.py:63 msgid "IPN must match regex pattern" msgstr "" -#: InvenTree/validators.py:66 InvenTree/validators.py:80 -#: InvenTree/validators.py:94 +#: InvenTree/validators.py:77 InvenTree/validators.py:91 +#: InvenTree/validators.py:105 msgid "Reference must match pattern" msgstr "" -#: InvenTree/validators.py:102 +#: InvenTree/validators.py:113 #, python-brace-format msgid "Illegal character in name ({x})" msgstr "" -#: InvenTree/validators.py:121 InvenTree/validators.py:137 +#: InvenTree/validators.py:132 InvenTree/validators.py:148 msgid "Overage value must not be negative" msgstr "" -#: InvenTree/validators.py:139 +#: InvenTree/validators.py:150 msgid "Overage must not exceed 100%" msgstr "" -#: InvenTree/validators.py:146 +#: InvenTree/validators.py:157 msgid "Overage must be an integer value or a percentage" msgstr "" -#: InvenTree/views.py:493 +#: InvenTree/views.py:494 msgid "Delete Item" msgstr "" -#: InvenTree/views.py:542 +#: InvenTree/views.py:543 msgid "Check box to confirm item deletion" msgstr "" -#: InvenTree/views.py:557 templates/InvenTree/settings/user.html:18 +#: InvenTree/views.py:558 templates/InvenTree/settings/user.html:18 msgid "Edit User Information" msgstr "" -#: InvenTree/views.py:568 templates/InvenTree/settings/user.html:22 +#: InvenTree/views.py:569 templates/InvenTree/settings/user.html:22 msgid "Set Password" msgstr "" -#: InvenTree/views.py:587 +#: InvenTree/views.py:588 msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:757 +#: InvenTree/views.py:794 msgid "Database Statistics" msgstr "" @@ -272,10 +280,10 @@ msgstr "" #: build/forms.py:70 build/templates/build/auto_allocate.html:17 #: build/templates/build/build_base.html:78 -#: build/templates/build/detail.html:29 -#: company/templates/company/supplier_part_pricing.html:75 +#: build/templates/build/detail.html:29 common/models.py:488 +#: company/forms.py:112 company/templates/company/supplier_part_pricing.html:75 #: order/templates/order/order_wizard/select_parts.html:32 -#: order/templates/order/purchase_order_detail.html:178 +#: order/templates/order/purchase_order_detail.html:179 #: order/templates/order/sales_order_detail.html:74 #: order/templates/order/sales_order_detail.html:156 #: part/templates/part/allocation.html:16 @@ -351,7 +359,7 @@ msgstr "" #: build/models.py:57 build/templates/build/index.html:6 #: build/templates/build/index.html:14 order/templates/order/so_builds.html:11 #: order/templates/order/so_tabs.html:9 part/templates/part/tabs.html:31 -#: templates/InvenTree/settings/tabs.html:25 users/models.py:30 +#: templates/InvenTree/settings/tabs.html:28 users/models.py:30 msgid "Build Orders" msgstr "" @@ -359,19 +367,20 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:73 order/templates/order/purchase_order_detail.html:173 +#: build/models.py:73 order/templates/order/purchase_order_detail.html:174 #: templates/js/bom.js:181 templates/js/build.js:493 msgid "Reference" msgstr "" #: build/models.py:80 build/templates/build/detail.html:19 +#: company/templates/company/detail.html:23 #: company/templates/company/supplier_part_base.html:61 #: company/templates/company/supplier_part_detail.html:27 -#: order/templates/order/purchase_order_detail.html:160 +#: order/templates/order/purchase_order_detail.html:161 #: part/templates/part/detail.html:51 part/templates/part/set_category.html:14 #: templates/InvenTree/search.html:147 templates/js/bom.js:174 #: templates/js/bom.js:499 templates/js/build.js:642 templates/js/company.js:56 -#: templates/js/order.js:167 templates/js/order.js:249 templates/js/part.js:188 +#: templates/js/order.js:168 templates/js/order.js:250 templates/js/part.js:188 #: templates/js/part.js:271 templates/js/part.js:391 templates/js/part.js:572 #: templates/js/stock.js:494 templates/js/stock.js:706 msgid "Description" @@ -392,10 +401,10 @@ msgstr "" #: build/models.py:97 build/templates/build/auto_allocate.html:16 #: build/templates/build/build_base.html:73 -#: build/templates/build/detail.html:24 order/models.py:519 +#: build/templates/build/detail.html:24 order/models.py:530 #: order/templates/order/order_wizard/select_parts.html:30 #: order/templates/order/purchase_order_detail.html:148 -#: order/templates/order/receive_parts.html:19 part/models.py:294 +#: order/templates/order/receive_parts.html:19 part/models.py:315 #: part/templates/part/part_app_base.html:7 part/templates/part/related.html:26 #: part/templates/part/set_category.html:13 templates/InvenTree/search.html:133 #: templates/js/barcode.js:336 templates/js/bom.js:147 templates/js/bom.js:484 @@ -475,13 +484,13 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:177 part/models.py:609 stock/models.py:386 +#: build/models.py:177 part/models.py:672 stock/models.py:386 msgid "Link to external URL" msgstr "" -#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:314 +#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:344 #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 -#: order/templates/order/purchase_order_detail.html:203 +#: order/templates/order/purchase_order_detail.html:213 #: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 #: stock/forms.py:307 stock/forms.py:339 stock/forms.py:367 stock/models.py:448 #: stock/models.py:1432 stock/templates/stock/tabs.html:26 @@ -528,11 +537,11 @@ msgstr "" msgid "Allocated quantity ({n}) must not exceed available quantity ({q})" msgstr "" -#: build/models.py:908 order/models.py:603 +#: build/models.py:908 order/models.py:614 msgid "StockItem is over-allocated" msgstr "" -#: build/models.py:912 order/models.py:606 +#: build/models.py:912 order/models.py:617 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -676,7 +685,7 @@ msgstr "" #: order/templates/order/receive_parts.html:24 #: stock/templates/stock/item_base.html:312 templates/InvenTree/search.html:175 #: templates/js/barcode.js:42 templates/js/build.js:675 -#: templates/js/order.js:172 templates/js/order.js:254 +#: templates/js/order.js:173 templates/js/order.js:255 #: templates/js/stock.js:557 templates/js/stock.js:961 msgid "Status" msgstr "" @@ -687,13 +696,13 @@ msgid "Progress" msgstr "" #: build/templates/build/build_base.html:101 -#: build/templates/build/detail.html:82 order/models.py:517 +#: build/templates/build/detail.html:82 order/models.py:528 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:33 #: order/templates/order/sales_order_notes.html:10 #: order/templates/order/sales_order_ship.html:25 #: part/templates/part/allocation.html:27 -#: stock/templates/stock/item_base.html:221 templates/js/order.js:221 +#: stock/templates/stock/item_base.html:221 templates/js/order.js:222 msgid "Sales Order" msgstr "" @@ -886,7 +895,7 @@ msgstr "" msgid "Create Build Output" msgstr "" -#: build/views.py:207 stock/models.py:827 stock/views.py:1647 +#: build/views.py:207 stock/models.py:827 stock/views.py:1660 msgid "Serial numbers already exist" msgstr "" @@ -902,7 +911,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:303 build/views.py:388 stock/views.py:413 +#: build/views.py:303 build/views.py:388 stock/views.py:417 msgid "Check the confirmation box" msgstr "" @@ -991,8 +1000,8 @@ msgstr "" msgid "Add Build Order Attachment" msgstr "" -#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:166 -#: stock/views.py:176 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:168 +#: stock/views.py:180 msgid "Added attachment" msgstr "" @@ -1008,167 +1017,179 @@ msgstr "" msgid "Delete Attachment" msgstr "" -#: build/views.py:1122 order/views.py:240 order/views.py:255 stock/views.py:234 +#: build/views.py:1122 order/views.py:240 order/views.py:255 stock/views.py:238 msgid "Deleted attachment" msgstr "" -#: common/models.py:55 +#: common/models.py:56 msgid "InvenTree Instance Name" msgstr "" -#: common/models.py:57 +#: common/models.py:58 msgid "String descriptor for the server instance" msgstr "" -#: common/models.py:61 company/models.py:89 company/models.py:90 +#: common/models.py:62 company/models.py:95 company/models.py:96 msgid "Company name" msgstr "" -#: common/models.py:62 +#: common/models.py:63 msgid "Internal company name" msgstr "" -#: common/models.py:67 +#: common/models.py:68 msgid "Default Currency" msgstr "" -#: common/models.py:68 +#: common/models.py:69 msgid "Default currency" msgstr "" -#: common/models.py:74 +#: common/models.py:75 msgid "IPN Regex" msgstr "" -#: common/models.py:75 +#: common/models.py:76 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:79 +#: common/models.py:80 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:80 +#: common/models.py:81 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:86 +#: common/models.py:87 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:87 +#: common/models.py:88 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:93 +#: common/models.py:94 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:94 +#: common/models.py:95 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:100 +#: common/models.py:101 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:101 +#: common/models.py:102 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:107 part/models.py:680 part/templates/part/detail.html:168 +#: common/models.py:108 +msgid "Copy Category Parameter Templates" +msgstr "" + +#: common/models.py:109 +msgid "Copy category parameter templates when creating a part" +msgstr "" + +#: common/models.py:115 part/models.py:743 part/templates/part/detail.html:168 #: templates/js/table_filters.js:264 msgid "Component" msgstr "" -#: common/models.py:108 +#: common/models.py:116 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:114 part/models.py:691 part/templates/part/detail.html:188 +#: common/models.py:122 part/models.py:754 part/templates/part/detail.html:188 msgid "Purchaseable" msgstr "" -#: common/models.py:115 +#: common/models.py:123 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:121 part/models.py:696 part/templates/part/detail.html:198 +#: common/models.py:129 part/models.py:759 part/templates/part/detail.html:198 #: templates/js/table_filters.js:272 msgid "Salable" msgstr "" -#: common/models.py:122 +#: common/models.py:130 msgid "Parts are salable by default" msgstr "" -#: common/models.py:128 part/models.py:686 part/templates/part/detail.html:178 +#: common/models.py:136 part/models.py:749 part/templates/part/detail.html:178 #: templates/js/table_filters.js:31 templates/js/table_filters.js:276 msgid "Trackable" msgstr "" -#: common/models.py:129 +#: common/models.py:137 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:135 +#: common/models.py:143 msgid "Build Order Reference Prefix" msgstr "" -#: common/models.py:136 +#: common/models.py:144 msgid "Prefix value for build order reference" msgstr "" -#: common/models.py:141 +#: common/models.py:149 msgid "Build Order Reference Regex" msgstr "" -#: common/models.py:142 +#: common/models.py:150 msgid "Regular expression pattern for matching build order reference" msgstr "" -#: common/models.py:146 +#: common/models.py:154 msgid "Sales Order Reference Prefix" msgstr "" -#: common/models.py:147 +#: common/models.py:155 msgid "Prefix value for sales order reference" msgstr "" -#: common/models.py:151 +#: common/models.py:159 msgid "Purchase Order Reference Prefix" msgstr "" -#: common/models.py:152 +#: common/models.py:160 msgid "Prefix value for purchase order reference" msgstr "" -#: common/models.py:357 +#: common/models.py:373 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:359 +#: common/models.py:375 msgid "Settings value" msgstr "" -#: common/models.py:415 +#: common/models.py:431 msgid "Value must be a boolean value" msgstr "" -#: common/models.py:429 +#: common/models.py:445 msgid "Key string must be unique" msgstr "" -#: common/models.py:474 company/templates/company/supplier_part_pricing.html:80 +#: common/models.py:489 company/forms.py:113 +msgid "Price break quantity" +msgstr "" + +#: common/models.py:497 company/templates/company/supplier_part_pricing.html:80 #: part/templates/part/sale_prices.html:87 templates/js/bom.js:234 msgid "Price" msgstr "" -#: common/models.py:475 +#: common/models.py:498 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:498 +#: common/models.py:521 msgid "Default" msgstr "" @@ -1180,109 +1201,125 @@ msgstr "" msgid "Change Setting" msgstr "" -#: company/models.py:92 -msgid "Company description" +#: company/forms.py:37 company/models.py:139 +msgid "Default currency used for this company" msgstr "" -#: company/models.py:92 -msgid "Description of the company" +#: company/forms.py:80 +msgid "Single Price" msgstr "" -#: company/models.py:94 company/templates/company/company_base.html:57 -#: templates/js/company.js:61 -msgid "Website" -msgstr "" - -#: company/models.py:94 -msgid "Company website URL" -msgstr "" - -#: company/models.py:97 company/templates/company/company_base.html:64 -msgid "Address" +#: company/forms.py:82 +msgid "Single quantity price" msgstr "" #: company/models.py:98 +msgid "Company description" +msgstr "" + +#: company/models.py:98 +msgid "Description of the company" +msgstr "" + +#: company/models.py:100 company/templates/company/company_base.html:57 +#: company/templates/company/detail.html:28 templates/js/company.js:61 +msgid "Website" +msgstr "" + +#: company/models.py:100 +msgid "Company website URL" +msgstr "" + +#: company/models.py:103 company/templates/company/company_base.html:64 +msgid "Address" +msgstr "" + +#: company/models.py:104 msgid "Company address" msgstr "" -#: company/models.py:101 +#: company/models.py:107 msgid "Phone number" msgstr "" -#: company/models.py:102 +#: company/models.py:108 msgid "Contact phone number" msgstr "" -#: company/models.py:105 company/templates/company/company_base.html:78 +#: company/models.py:111 company/templates/company/company_base.html:78 msgid "Email" msgstr "" -#: company/models.py:105 +#: company/models.py:111 msgid "Contact email address" msgstr "" -#: company/models.py:108 company/templates/company/company_base.html:85 +#: company/models.py:114 company/templates/company/company_base.html:85 msgid "Contact" msgstr "" -#: company/models.py:109 +#: company/models.py:115 msgid "Point of contact" msgstr "" -#: company/models.py:111 +#: company/models.py:117 msgid "Link to external company information" msgstr "" -#: company/models.py:123 +#: company/models.py:129 msgid "Do you sell items to this company?" msgstr "" -#: company/models.py:125 +#: company/models.py:131 msgid "Do you purchase items from this company?" msgstr "" -#: company/models.py:127 +#: company/models.py:133 msgid "Does this company manufacture parts?" msgstr "" -#: company/models.py:283 stock/models.py:338 +#: company/models.py:137 company/templates/company/detail.html:37 +msgid "Currency" +msgstr "" + +#: company/models.py:313 stock/models.py:338 #: stock/templates/stock/item_base.html:177 msgid "Base Part" msgstr "" -#: company/models.py:288 +#: company/models.py:318 msgid "Select part" msgstr "" -#: company/models.py:294 +#: company/models.py:324 msgid "Select supplier" msgstr "" -#: company/models.py:297 +#: company/models.py:327 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:304 +#: company/models.py:334 msgid "Select manufacturer" msgstr "" -#: company/models.py:308 +#: company/models.py:338 msgid "Manufacturer part number" msgstr "" -#: company/models.py:310 +#: company/models.py:340 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:312 +#: company/models.py:342 msgid "Supplier part description" msgstr "" -#: company/models.py:316 +#: company/models.py:346 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:318 +#: company/models.py:348 msgid "Part packaging" msgstr "" @@ -1305,27 +1342,39 @@ msgstr "" msgid "Phone" msgstr "" -#: company/templates/company/detail.html:16 +#: company/templates/company/detail.html:18 +msgid "Company Name" +msgstr "" + +#: company/templates/company/detail.html:31 +msgid "No website specified" +msgstr "" + +#: company/templates/company/detail.html:40 +msgid "Uses default currency" +msgstr "" + +#: company/templates/company/detail.html:52 #: company/templates/company/supplier_part_base.html:84 #: company/templates/company/supplier_part_detail.html:30 part/bom.py:172 #: templates/js/company.js:44 templates/js/company.js:188 msgid "Manufacturer" msgstr "" -#: company/templates/company/detail.html:21 +#: company/templates/company/detail.html:57 #: company/templates/company/supplier_part_base.html:74 #: company/templates/company/supplier_part_detail.html:21 #: order/templates/order/order_base.html:79 #: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:170 #: stock/templates/stock/item_base.html:287 templates/js/company.js:48 -#: templates/js/company.js:164 templates/js/order.js:154 +#: templates/js/company.js:164 templates/js/order.js:155 msgid "Supplier" msgstr "" -#: company/templates/company/detail.html:26 +#: company/templates/company/detail.html:62 #: order/templates/order/sales_order_base.html:81 stock/models.py:373 #: stock/models.py:374 stock/templates/stock/item_base.html:204 -#: templates/js/company.js:40 templates/js/order.js:236 +#: templates/js/company.js:40 templates/js/order.js:237 msgid "Customer" msgstr "" @@ -1372,21 +1421,21 @@ msgstr "" msgid "Create new Part" msgstr "" -#: company/templates/company/detail_part.html:69 company/views.py:55 +#: company/templates/company/detail_part.html:69 company/views.py:56 #: part/templates/part/supplier.html:47 msgid "New Supplier" msgstr "" -#: company/templates/company/detail_part.html:70 company/views.py:194 +#: company/templates/company/detail_part.html:70 company/views.py:195 msgid "Create new Supplier" msgstr "" -#: company/templates/company/detail_part.html:75 company/views.py:62 +#: company/templates/company/detail_part.html:75 company/views.py:63 #: part/templates/part/supplier.html:53 msgid "New Manufacturer" msgstr "" -#: company/templates/company/detail_part.html:76 company/views.py:197 +#: company/templates/company/detail_part.html:76 company/views.py:198 msgid "Create new Manufacturer" msgstr "" @@ -1420,7 +1469,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:7 #: order/templates/order/purchase_orders.html:12 #: part/templates/part/orders.html:9 part/templates/part/tabs.html:48 -#: templates/InvenTree/settings/tabs.html:28 templates/navbar.html:33 +#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:33 #: users/models.py:31 msgid "Purchase Orders" msgstr "" @@ -1440,7 +1489,7 @@ msgstr "" #: order/templates/order/sales_orders.html:7 #: order/templates/order/sales_orders.html:12 #: part/templates/part/sales_orders.html:9 part/templates/part/tabs.html:56 -#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:42 +#: templates/InvenTree/settings/tabs.html:34 templates/navbar.html:42 #: users/models.py:32 msgid "Sales Orders" msgstr "" @@ -1513,8 +1562,8 @@ msgstr "" msgid "Pricing Information" msgstr "" -#: company/templates/company/supplier_part_pricing.html:17 company/views.py:412 -#: part/templates/part/sale_prices.html:14 part/views.py:2350 +#: company/templates/company/supplier_part_pricing.html:17 company/views.py:459 +#: part/templates/part/sale_prices.html:14 part/views.py:2546 msgid "Add Price Break" msgstr "" @@ -1544,7 +1593,7 @@ msgstr "" #: company/templates/company/supplier_part_tabs.html:8 #: company/templates/company/tabs.html:12 part/templates/part/tabs.html:18 #: stock/templates/stock/location.html:17 templates/InvenTree/search.html:155 -#: templates/InvenTree/settings/tabs.html:22 templates/js/part.js:192 +#: templates/InvenTree/settings/tabs.html:25 templates/js/part.js:192 #: templates/js/part.js:418 templates/js/stock.js:502 templates/navbar.html:22 #: users/models.py:29 msgid "Stock" @@ -1555,96 +1604,96 @@ msgid "Orders" msgstr "" #: company/templates/company/tabs.html:9 -#: order/templates/order/receive_parts.html:14 part/models.py:295 +#: order/templates/order/receive_parts.html:14 part/models.py:316 #: part/templates/part/cat_link.html:7 part/templates/part/category.html:94 #: part/templates/part/category_tabs.html:6 -#: templates/InvenTree/settings/tabs.html:19 templates/navbar.html:19 +#: templates/InvenTree/settings/tabs.html:22 templates/navbar.html:19 #: templates/stats.html:8 templates/stats.html:17 users/models.py:28 msgid "Parts" msgstr "" -#: company/views.py:54 part/templates/part/tabs.html:42 +#: company/views.py:55 part/templates/part/tabs.html:42 #: templates/navbar.html:31 msgid "Suppliers" msgstr "" -#: company/views.py:61 templates/navbar.html:32 +#: company/views.py:62 templates/navbar.html:32 msgid "Manufacturers" msgstr "" -#: company/views.py:68 templates/navbar.html:41 +#: company/views.py:69 templates/navbar.html:41 msgid "Customers" msgstr "" -#: company/views.py:69 +#: company/views.py:70 msgid "New Customer" msgstr "" -#: company/views.py:77 +#: company/views.py:78 msgid "Companies" msgstr "" -#: company/views.py:78 +#: company/views.py:79 msgid "New Company" msgstr "" -#: company/views.py:156 +#: company/views.py:157 msgid "Update Company Image" msgstr "" -#: company/views.py:162 +#: company/views.py:163 msgid "Updated company image" msgstr "" -#: company/views.py:172 +#: company/views.py:173 msgid "Edit Company" msgstr "" -#: company/views.py:177 +#: company/views.py:178 msgid "Edited company information" msgstr "" -#: company/views.py:200 +#: company/views.py:201 msgid "Create new Customer" msgstr "" -#: company/views.py:202 +#: company/views.py:203 msgid "Create new Company" msgstr "" -#: company/views.py:229 +#: company/views.py:230 msgid "Created new company" msgstr "" -#: company/views.py:239 +#: company/views.py:240 msgid "Delete Company" msgstr "" -#: company/views.py:245 +#: company/views.py:246 msgid "Company was deleted" msgstr "" -#: company/views.py:270 +#: company/views.py:271 msgid "Edit Supplier Part" msgstr "" -#: company/views.py:280 templates/js/stock.js:846 +#: company/views.py:289 templates/js/stock.js:846 msgid "Create new Supplier Part" msgstr "" -#: company/views.py:341 +#: company/views.py:388 msgid "Delete Supplier Part" msgstr "" -#: company/views.py:418 part/views.py:2356 +#: company/views.py:465 part/views.py:2552 msgid "Added new price break" msgstr "" -#: company/views.py:454 part/views.py:2400 +#: company/views.py:521 part/views.py:2596 msgid "Edit Price Break" msgstr "" -#: company/views.py:470 part/views.py:2416 +#: company/views.py:537 part/views.py:2612 msgid "Delete Price Break" msgstr "" @@ -1701,114 +1750,123 @@ msgstr "" msgid "Enter sales order number" msgstr "" -#: order/models.py:108 +#: order/models.py:110 msgid "Order reference" msgstr "" -#: order/models.py:110 +#: order/models.py:112 msgid "Order description" msgstr "" -#: order/models.py:112 +#: order/models.py:114 msgid "Link to external page" msgstr "" -#: order/models.py:122 +#: order/models.py:124 msgid "Order notes" msgstr "" -#: order/models.py:140 order/models.py:326 +#: order/models.py:142 order/models.py:328 msgid "Purchase order status" msgstr "" -#: order/models.py:148 +#: order/models.py:150 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:151 +#: order/models.py:153 msgid "Supplier order reference code" msgstr "" -#: order/models.py:160 +#: order/models.py:162 msgid "Date order was issued" msgstr "" -#: order/models.py:162 +#: order/models.py:164 msgid "Date order was completed" msgstr "" -#: order/models.py:185 order/models.py:267 part/views.py:1479 +#: order/models.py:187 order/models.py:269 part/views.py:1496 #: stock/models.py:244 stock/models.py:811 msgid "Quantity must be greater than zero" msgstr "" -#: order/models.py:190 +#: order/models.py:192 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:262 +#: order/models.py:264 msgid "Lines can only be received against an order marked as 'Placed'" msgstr "" -#: order/models.py:322 +#: order/models.py:324 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:328 +#: order/models.py:330 msgid "Customer order reference code" msgstr "" -#: order/models.py:367 +#: order/models.py:369 msgid "SalesOrder cannot be shipped as it is not currently pending" msgstr "" -#: order/models.py:454 +#: order/models.py:456 msgid "Item quantity" msgstr "" -#: order/models.py:456 +#: order/models.py:458 msgid "Line item reference" msgstr "" -#: order/models.py:458 +#: order/models.py:460 msgid "Line item notes" msgstr "" -#: order/models.py:484 order/templates/order/order_base.html:9 +#: order/models.py:486 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:24 #: stock/templates/stock/item_base.html:259 templates/js/order.js:139 msgid "Purchase Order" msgstr "" -#: order/models.py:497 +#: order/models.py:499 msgid "Supplier part" msgstr "" -#: order/models.py:500 +#: order/models.py:502 msgid "Number of items received" msgstr "" -#: order/models.py:594 +#: order/models.py:509 stock/models.py:457 +#: stock/templates/stock/item_base.html:266 +msgid "Purchase Price" +msgstr "" + +#: order/models.py:510 +msgid "Unit purchase price" +msgstr "" + +#: order/models.py:605 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:596 +#: order/models.py:607 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:599 +#: order/models.py:610 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:609 +#: order/models.py:620 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:625 +#: order/models.py:636 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:628 +#: order/models.py:639 msgid "Enter stock allocation quantity" msgstr "" @@ -1844,7 +1902,7 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:85 templates/js/order.js:161 +#: order/templates/order/order_base.html:85 templates/js/order.js:162 msgid "Supplier Reference" msgstr "" @@ -1853,7 +1911,7 @@ msgid "Issued" msgstr "" #: order/templates/order/order_base.html:111 -#: order/templates/order/purchase_order_detail.html:183 +#: order/templates/order/purchase_order_detail.html:193 #: order/templates/order/receive_parts.html:22 #: order/templates/order/sales_order_base.html:113 msgid "Received" @@ -1900,7 +1958,7 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/order.js:185 templates/js/order.js:272 +#: templates/js/order.js:186 templates/js/order.js:273 msgid "Items" msgstr "" @@ -1952,21 +2010,25 @@ msgstr "" msgid "No line items found" msgstr "" -#: order/templates/order/purchase_order_detail.html:165 +#: order/templates/order/purchase_order_detail.html:166 #: order/templates/order/receive_parts.html:20 msgid "Order Code" msgstr "" -#: order/templates/order/purchase_order_detail.html:214 +#: order/templates/order/purchase_order_detail.html:184 +msgid "Unit Price" +msgstr "" + +#: order/templates/order/purchase_order_detail.html:225 #: order/templates/order/sales_order_detail.html:285 msgid "Edit line item" msgstr "" -#: order/templates/order/purchase_order_detail.html:215 +#: order/templates/order/purchase_order_detail.html:226 msgid "Delete line item" msgstr "" -#: order/templates/order/purchase_order_detail.html:220 +#: order/templates/order/purchase_order_detail.html:231 msgid "Receive line item" msgstr "" @@ -2003,7 +2065,7 @@ msgstr "" msgid "Sales Order Details" msgstr "" -#: order/templates/order/sales_order_base.html:87 templates/js/order.js:243 +#: order/templates/order/sales_order_base.html:87 templates/js/order.js:244 msgid "Customer Reference" msgstr "" @@ -2256,367 +2318,389 @@ msgstr "" msgid "Error reading BOM file (incorrect row size)" msgstr "" -#: part/forms.py:60 stock/forms.py:255 +#: part/forms.py:61 stock/forms.py:255 msgid "File Format" msgstr "" -#: part/forms.py:60 stock/forms.py:255 +#: part/forms.py:61 stock/forms.py:255 msgid "Select output file format" msgstr "" -#: part/forms.py:62 +#: part/forms.py:63 msgid "Cascading" msgstr "" -#: part/forms.py:62 +#: part/forms.py:63 msgid "Download cascading / multi-level BOM" msgstr "" -#: part/forms.py:64 +#: part/forms.py:65 msgid "Levels" msgstr "" -#: part/forms.py:64 +#: part/forms.py:65 msgid "Select maximum number of BOM levels to export (0 = all levels)" msgstr "" -#: part/forms.py:66 +#: part/forms.py:67 msgid "Include Parameter Data" msgstr "" -#: part/forms.py:66 +#: part/forms.py:67 msgid "Include part parameters data in exported BOM" msgstr "" -#: part/forms.py:68 +#: part/forms.py:69 msgid "Include Stock Data" msgstr "" -#: part/forms.py:68 +#: part/forms.py:69 msgid "Include part stock data in exported BOM" msgstr "" -#: part/forms.py:70 +#: part/forms.py:71 msgid "Include Supplier Data" msgstr "" -#: part/forms.py:70 +#: part/forms.py:71 msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:91 part/models.py:1644 +#: part/forms.py:92 part/models.py:1715 msgid "Parent Part" msgstr "" -#: part/forms.py:92 part/templates/part/bom_duplicate.html:7 +#: part/forms.py:93 part/templates/part/bom_duplicate.html:7 msgid "Select parent part to copy BOM from" msgstr "" -#: part/forms.py:98 +#: part/forms.py:99 msgid "Clear existing BOM items" msgstr "" -#: part/forms.py:103 +#: part/forms.py:104 msgid "Confirm BOM duplication" msgstr "" -#: part/forms.py:121 +#: part/forms.py:122 msgid "Confirm that the BOM is correct" msgstr "" -#: part/forms.py:133 +#: part/forms.py:134 msgid "Select BOM file to upload" msgstr "" -#: part/forms.py:152 +#: part/forms.py:153 msgid "Related Part" msgstr "" -#: part/forms.py:171 +#: part/forms.py:172 msgid "Select part category" msgstr "" -#: part/forms.py:187 +#: part/forms.py:188 msgid "Duplicate all BOM data for this part" msgstr "" -#: part/forms.py:188 +#: part/forms.py:189 msgid "Copy BOM" msgstr "" -#: part/forms.py:193 +#: part/forms.py:194 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:194 +#: part/forms.py:195 msgid "Copy Parameters" msgstr "" -#: part/forms.py:199 +#: part/forms.py:200 msgid "Confirm part creation" msgstr "" -#: part/forms.py:296 +#: part/forms.py:205 +msgid "Include category parameter templates" +msgstr "" + +#: part/forms.py:210 +msgid "Include parent categories parameter templates" +msgstr "" + +#: part/forms.py:285 +msgid "Add parameter template to same level categories" +msgstr "" + +#: part/forms.py:289 +msgid "Add parameter template to all categories" +msgstr "" + +#: part/forms.py:331 msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:67 +#: part/models.py:68 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:70 +#: part/models.py:71 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:76 part/templates/part/part_app_base.html:9 +#: part/models.py:77 part/models.py:1760 +#: part/templates/part/part_app_base.html:9 msgid "Part Category" msgstr "" -#: part/models.py:77 part/templates/part/category.html:18 +#: part/models.py:78 part/templates/part/category.html:18 #: part/templates/part/category.html:89 templates/stats.html:12 msgid "Part Categories" msgstr "" -#: part/models.py:346 part/models.py:356 +#: part/models.py:408 part/models.py:418 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:453 +#: part/models.py:515 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:457 +#: part/models.py:519 msgid "Next available serial number is" msgstr "" -#: part/models.py:462 +#: part/models.py:524 msgid "Most recent serial number is" msgstr "" -#: part/models.py:541 +#: part/models.py:603 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:552 +#: part/models.py:614 msgid "Part must be unique for name, IPN and revision" msgstr "" -#: part/models.py:581 part/templates/part/detail.html:19 +#: part/models.py:644 part/templates/part/detail.html:19 msgid "Part name" msgstr "" -#: part/models.py:585 +#: part/models.py:648 msgid "Is this part a template part?" msgstr "" -#: part/models.py:594 +#: part/models.py:657 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:596 +#: part/models.py:659 msgid "Part description" msgstr "" -#: part/models.py:598 +#: part/models.py:661 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:603 +#: part/models.py:666 msgid "Part category" msgstr "" -#: part/models.py:605 +#: part/models.py:668 msgid "Internal Part Number" msgstr "" -#: part/models.py:607 +#: part/models.py:670 msgid "Part revision or version number" msgstr "" -#: part/models.py:621 +#: part/models.py:684 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:665 +#: part/models.py:728 msgid "Default supplier part" msgstr "" -#: part/models.py:668 +#: part/models.py:731 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:670 +#: part/models.py:733 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:674 part/templates/part/detail.html:158 +#: part/models.py:737 part/templates/part/detail.html:158 #: templates/js/table_filters.js:260 msgid "Assembly" msgstr "" -#: part/models.py:675 +#: part/models.py:738 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:681 +#: part/models.py:744 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:687 +#: part/models.py:750 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:692 +#: part/models.py:755 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:697 +#: part/models.py:760 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:701 part/templates/part/detail.html:215 +#: part/models.py:764 part/templates/part/detail.html:215 #: templates/js/table_filters.js:19 templates/js/table_filters.js:55 #: templates/js/table_filters.js:186 templates/js/table_filters.js:243 msgid "Active" msgstr "" -#: part/models.py:702 +#: part/models.py:765 msgid "Is this part active?" msgstr "" -#: part/models.py:706 part/templates/part/detail.html:138 +#: part/models.py:769 part/templates/part/detail.html:138 #: templates/js/table_filters.js:27 msgid "Virtual" msgstr "" -#: part/models.py:707 +#: part/models.py:770 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:709 +#: part/models.py:772 msgid "Part notes - supports Markdown formatting" msgstr "" -#: part/models.py:711 +#: part/models.py:774 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1517 +#: part/models.py:1588 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:1534 +#: part/models.py:1605 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:1553 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1624 templates/js/part.js:567 templates/js/stock.js:92 msgid "Test Name" msgstr "" -#: part/models.py:1554 +#: part/models.py:1625 msgid "Enter a name for the test" msgstr "" -#: part/models.py:1559 +#: part/models.py:1630 msgid "Test Description" msgstr "" -#: part/models.py:1560 +#: part/models.py:1631 msgid "Enter description for this test" msgstr "" -#: part/models.py:1565 templates/js/part.js:576 +#: part/models.py:1636 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "" -#: part/models.py:1566 +#: part/models.py:1637 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1571 templates/js/part.js:584 +#: part/models.py:1642 templates/js/part.js:584 msgid "Requires Value" msgstr "" -#: part/models.py:1572 +#: part/models.py:1643 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1577 templates/js/part.js:591 +#: part/models.py:1648 templates/js/part.js:591 msgid "Requires Attachment" msgstr "" -#: part/models.py:1578 +#: part/models.py:1649 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1611 +#: part/models.py:1682 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:1616 +#: part/models.py:1687 msgid "Parameter Name" msgstr "" -#: part/models.py:1618 +#: part/models.py:1689 msgid "Parameter Units" msgstr "" -#: part/models.py:1646 +#: part/models.py:1717 part/models.py:1765 +#: templates/InvenTree/settings/category.html:62 msgid "Parameter Template" msgstr "" -#: part/models.py:1648 +#: part/models.py:1719 msgid "Parameter Value" msgstr "" -#: part/models.py:1685 +#: part/models.py:1769 +msgid "Default Parameter Value" +msgstr "" + +#: part/models.py:1799 msgid "Select parent part" msgstr "" -#: part/models.py:1693 +#: part/models.py:1807 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:1699 +#: part/models.py:1813 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:1701 +#: part/models.py:1815 msgid "This BOM item is optional" msgstr "" -#: part/models.py:1704 +#: part/models.py:1818 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:1707 +#: part/models.py:1821 msgid "BOM item reference" msgstr "" -#: part/models.py:1710 +#: part/models.py:1824 msgid "BOM item notes" msgstr "" -#: part/models.py:1712 +#: part/models.py:1826 msgid "BOM line checksum" msgstr "" -#: part/models.py:1779 part/views.py:1485 part/views.py:1537 +#: part/models.py:1893 part/views.py:1502 part/views.py:1554 #: stock/models.py:234 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:1795 +#: part/models.py:1909 msgid "BOM Item" msgstr "" -#: part/models.py:1910 +#: part/models.py:2024 msgid "Select Related Part" msgstr "" -#: part/models.py:1942 +#: part/models.py:2056 msgid "" "Error creating relationship: check that the part is not related to itself " "and that the relationship is unique" @@ -2704,7 +2788,7 @@ msgstr "" msgid "Validate" msgstr "" -#: part/templates/part/bom.html:62 part/views.py:1776 +#: part/templates/part/bom.html:62 part/views.py:1793 msgid "Export Bill of Materials" msgstr "" @@ -2800,7 +2884,7 @@ msgstr "" msgid "All parts" msgstr "" -#: part/templates/part/category.html:24 part/views.py:2167 +#: part/templates/part/category.html:24 part/views.py:2184 msgid "Create new part category" msgstr "" @@ -2872,7 +2956,7 @@ msgstr "" msgid "Create new Part Category" msgstr "" -#: part/templates/part/category.html:216 stock/views.py:1338 +#: part/templates/part/category.html:216 stock/views.py:1342 msgid "Create new Stock Location" msgstr "" @@ -2934,7 +3018,7 @@ msgstr "" msgid "Minimum Stock" msgstr "" -#: part/templates/part/detail.html:114 templates/js/order.js:262 +#: part/templates/part/detail.html:114 templates/js/order.js:263 msgid "Creation Date" msgstr "" @@ -3023,7 +3107,9 @@ msgstr "" msgid "Add new parameter" msgstr "" -#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:37 +#: part/templates/part/params.html:15 +#: templates/InvenTree/settings/category.html:29 +#: templates/InvenTree/settings/part.html:38 msgid "New Parameter" msgstr "" @@ -3033,7 +3119,7 @@ msgid "Value" msgstr "" #: part/templates/part/params.html:41 part/templates/part/related.html:41 -#: part/templates/part/supplier.html:19 users/models.py:148 +#: part/templates/part/supplier.html:19 users/models.py:152 msgid "Delete" msgstr "" @@ -3241,208 +3327,220 @@ msgstr "" msgid "New Variant" msgstr "" -#: part/views.py:82 +#: part/views.py:84 msgid "Add Related Part" msgstr "" -#: part/views.py:138 +#: part/views.py:140 msgid "Delete Related Part" msgstr "" -#: part/views.py:150 +#: part/views.py:152 msgid "Add part attachment" msgstr "" -#: part/views.py:205 templates/attachment_table.html:34 +#: part/views.py:207 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "" -#: part/views.py:211 +#: part/views.py:213 msgid "Part attachment updated" msgstr "" -#: part/views.py:226 +#: part/views.py:228 msgid "Delete Part Attachment" msgstr "" -#: part/views.py:234 +#: part/views.py:236 msgid "Deleted part attachment" msgstr "" -#: part/views.py:243 +#: part/views.py:245 msgid "Create Test Template" msgstr "" -#: part/views.py:272 +#: part/views.py:274 msgid "Edit Test Template" msgstr "" -#: part/views.py:288 +#: part/views.py:290 msgid "Delete Test Template" msgstr "" -#: part/views.py:297 +#: part/views.py:299 msgid "Set Part Category" msgstr "" -#: part/views.py:347 +#: part/views.py:349 #, python-brace-format msgid "Set category for {n} parts" msgstr "" -#: part/views.py:382 +#: part/views.py:384 msgid "Create Variant" msgstr "" -#: part/views.py:464 +#: part/views.py:466 msgid "Duplicate Part" msgstr "" -#: part/views.py:471 +#: part/views.py:473 msgid "Copied part" msgstr "" -#: part/views.py:525 part/views.py:655 +#: part/views.py:527 part/views.py:661 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:590 templates/js/stock.js:840 +#: part/views.py:592 templates/js/stock.js:840 msgid "Create New Part" msgstr "" -#: part/views.py:597 +#: part/views.py:599 msgid "Created new part" msgstr "" -#: part/views.py:813 +#: part/views.py:830 msgid "Part QR Code" msgstr "" -#: part/views.py:832 +#: part/views.py:849 msgid "Upload Part Image" msgstr "" -#: part/views.py:840 part/views.py:877 +#: part/views.py:857 part/views.py:894 msgid "Updated part image" msgstr "" -#: part/views.py:849 +#: part/views.py:866 msgid "Select Part Image" msgstr "" -#: part/views.py:880 +#: part/views.py:897 msgid "Part image not found" msgstr "" -#: part/views.py:891 +#: part/views.py:908 msgid "Edit Part Properties" msgstr "" -#: part/views.py:918 +#: part/views.py:935 msgid "Duplicate BOM" msgstr "" -#: part/views.py:949 +#: part/views.py:966 msgid "Confirm duplication of BOM from parent" msgstr "" -#: part/views.py:970 +#: part/views.py:987 msgid "Validate BOM" msgstr "" -#: part/views.py:993 +#: part/views.py:1010 msgid "Confirm that the BOM is valid" msgstr "" -#: part/views.py:1004 +#: part/views.py:1021 msgid "Validated Bill of Materials" msgstr "" -#: part/views.py:1138 +#: part/views.py:1155 msgid "No BOM file provided" msgstr "" -#: part/views.py:1488 +#: part/views.py:1505 msgid "Enter a valid quantity" msgstr "" -#: part/views.py:1513 part/views.py:1516 +#: part/views.py:1530 part/views.py:1533 msgid "Select valid part" msgstr "" -#: part/views.py:1522 +#: part/views.py:1539 msgid "Duplicate part selected" msgstr "" -#: part/views.py:1560 +#: part/views.py:1577 msgid "Select a part" msgstr "" -#: part/views.py:1566 +#: part/views.py:1583 msgid "Selected part creates a circular BOM" msgstr "" -#: part/views.py:1570 +#: part/views.py:1587 msgid "Specify quantity" msgstr "" -#: part/views.py:1826 +#: part/views.py:1843 msgid "Confirm Part Deletion" msgstr "" -#: part/views.py:1835 +#: part/views.py:1852 msgid "Part was deleted" msgstr "" -#: part/views.py:1844 +#: part/views.py:1861 msgid "Part Pricing" msgstr "" -#: part/views.py:1958 +#: part/views.py:1975 msgid "Create Part Parameter Template" msgstr "" -#: part/views.py:1968 +#: part/views.py:1985 msgid "Edit Part Parameter Template" msgstr "" -#: part/views.py:1977 +#: part/views.py:1994 msgid "Delete Part Parameter Template" msgstr "" -#: part/views.py:1987 +#: part/views.py:2004 msgid "Create Part Parameter" msgstr "" -#: part/views.py:2039 +#: part/views.py:2056 msgid "Edit Part Parameter" msgstr "" -#: part/views.py:2055 +#: part/views.py:2072 msgid "Delete Part Parameter" msgstr "" -#: part/views.py:2114 +#: part/views.py:2131 msgid "Edit Part Category" msgstr "" -#: part/views.py:2151 +#: part/views.py:2168 msgid "Delete Part Category" msgstr "" -#: part/views.py:2159 +#: part/views.py:2176 msgid "Part category was deleted" msgstr "" -#: part/views.py:2222 +#: part/views.py:2232 +msgid "Create Category Parameter Template" +msgstr "" + +#: part/views.py:2335 +msgid "Edit Category Parameter Template" +msgstr "" + +#: part/views.py:2393 +msgid "Delete Category Parameter Template" +msgstr "" + +#: part/views.py:2418 msgid "Create BOM Item" msgstr "" -#: part/views.py:2290 +#: part/views.py:2486 msgid "Edit BOM item" msgstr "" -#: part/views.py:2340 +#: part/views.py:2536 msgid "Confim BOM item deletion" msgstr "" @@ -3526,7 +3624,7 @@ msgstr "" msgid "Add note (required)" msgstr "" -#: stock/forms.py:371 stock/views.py:916 stock/views.py:1114 +#: stock/forms.py:371 stock/views.py:920 stock/views.py:1118 msgid "Confirm stock adjustment" msgstr "" @@ -3644,10 +3742,6 @@ msgstr "" msgid "Stock Item Notes" msgstr "" -#: stock/models.py:457 stock/templates/stock/item_base.html:266 -msgid "Purchase Price" -msgstr "" - #: stock/models.py:458 msgid "Single unit purchase price at time of purchase" msgstr "" @@ -4041,7 +4135,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:1310 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:1314 msgid "Convert Stock Item" msgstr "" @@ -4073,222 +4167,222 @@ msgstr "" msgid "Installed Items" msgstr "" -#: stock/views.py:119 +#: stock/views.py:123 msgid "Edit Stock Location" msgstr "" -#: stock/views.py:144 +#: stock/views.py:148 msgid "Stock Location QR code" msgstr "" -#: stock/views.py:163 +#: stock/views.py:167 msgid "Add Stock Item Attachment" msgstr "" -#: stock/views.py:210 +#: stock/views.py:214 msgid "Edit Stock Item Attachment" msgstr "" -#: stock/views.py:227 +#: stock/views.py:231 msgid "Delete Stock Item Attachment" msgstr "" -#: stock/views.py:244 +#: stock/views.py:248 msgid "Assign to Customer" msgstr "" -#: stock/views.py:254 +#: stock/views.py:258 msgid "Customer must be specified" msgstr "" -#: stock/views.py:278 +#: stock/views.py:282 msgid "Return to Stock" msgstr "" -#: stock/views.py:288 +#: stock/views.py:292 msgid "Specify a valid location" msgstr "" -#: stock/views.py:299 +#: stock/views.py:303 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:309 +#: stock/views.py:313 msgid "Select Label Template" msgstr "" -#: stock/views.py:332 +#: stock/views.py:336 msgid "Select valid label" msgstr "" -#: stock/views.py:396 +#: stock/views.py:400 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:412 +#: stock/views.py:416 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:432 +#: stock/views.py:436 msgid "Add Test Result" msgstr "" -#: stock/views.py:473 +#: stock/views.py:477 msgid "Edit Test Result" msgstr "" -#: stock/views.py:491 +#: stock/views.py:495 msgid "Delete Test Result" msgstr "" -#: stock/views.py:503 +#: stock/views.py:507 msgid "Select Test Report Template" msgstr "" -#: stock/views.py:518 +#: stock/views.py:522 msgid "Select valid template" msgstr "" -#: stock/views.py:571 +#: stock/views.py:575 msgid "Stock Export Options" msgstr "" -#: stock/views.py:693 +#: stock/views.py:697 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:719 +#: stock/views.py:723 msgid "Install Stock Item" msgstr "" -#: stock/views.py:819 +#: stock/views.py:823 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:927 +#: stock/views.py:931 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:952 +#: stock/views.py:956 msgid "Adjust Stock" msgstr "" -#: stock/views.py:1062 +#: stock/views.py:1066 msgid "Move Stock Items" msgstr "" -#: stock/views.py:1063 +#: stock/views.py:1067 msgid "Count Stock Items" msgstr "" -#: stock/views.py:1064 +#: stock/views.py:1068 msgid "Remove From Stock" msgstr "" -#: stock/views.py:1065 +#: stock/views.py:1069 msgid "Add Stock Items" msgstr "" -#: stock/views.py:1066 +#: stock/views.py:1070 msgid "Delete Stock Items" msgstr "" -#: stock/views.py:1094 +#: stock/views.py:1098 msgid "Must enter integer value" msgstr "" -#: stock/views.py:1099 +#: stock/views.py:1103 msgid "Quantity must be positive" msgstr "" -#: stock/views.py:1106 +#: stock/views.py:1110 #, python-brace-format msgid "Quantity must not exceed {x}" msgstr "" -#: stock/views.py:1185 +#: stock/views.py:1189 #, python-brace-format msgid "Added stock to {n} items" msgstr "" -#: stock/views.py:1200 +#: stock/views.py:1204 #, python-brace-format msgid "Removed stock from {n} items" msgstr "" -#: stock/views.py:1213 +#: stock/views.py:1217 #, python-brace-format msgid "Counted stock for {n} items" msgstr "" -#: stock/views.py:1241 +#: stock/views.py:1245 msgid "No items were moved" msgstr "" -#: stock/views.py:1244 +#: stock/views.py:1248 #, python-brace-format msgid "Moved {n} items to {dest}" msgstr "" -#: stock/views.py:1263 +#: stock/views.py:1267 #, python-brace-format msgid "Deleted {n} stock items" msgstr "" -#: stock/views.py:1275 +#: stock/views.py:1279 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:1360 +#: stock/views.py:1364 msgid "Serialize Stock" msgstr "" -#: stock/views.py:1454 templates/js/build.js:210 +#: stock/views.py:1458 templates/js/build.js:210 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1555 +#: stock/views.py:1559 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1621 +#: stock/views.py:1634 msgid "Invalid quantity" msgstr "" -#: stock/views.py:1624 +#: stock/views.py:1637 msgid "Quantity cannot be less than zero" msgstr "" -#: stock/views.py:1628 +#: stock/views.py:1641 msgid "Invalid part selection" msgstr "" -#: stock/views.py:1676 +#: stock/views.py:1689 #, python-brace-format msgid "Created {n} new stock items" msgstr "" -#: stock/views.py:1695 stock/views.py:1711 +#: stock/views.py:1708 stock/views.py:1724 msgid "Created new stock item" msgstr "" -#: stock/views.py:1730 +#: stock/views.py:1743 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1744 +#: stock/views.py:1757 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1756 +#: stock/views.py:1769 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1775 +#: stock/views.py:1788 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1785 +#: stock/views.py:1798 msgid "Add Stock Tracking Entry" msgstr "" @@ -4360,6 +4454,32 @@ msgstr "" msgid "Build Order Settings" msgstr "" +#: templates/InvenTree/settings/category.html:9 +msgid "Category Settings" +msgstr "" + +#: templates/InvenTree/settings/category.html:25 +msgid "Category Parameter Templates" +msgstr "" + +#: templates/InvenTree/settings/category.html:52 +msgid "No category parameter templates found" +msgstr "" + +#: templates/InvenTree/settings/category.html:67 +msgid "Default Value" +msgstr "" + +#: templates/InvenTree/settings/category.html:70 +#: templates/InvenTree/settings/part.html:75 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/category.html:71 +#: templates/InvenTree/settings/part.html:76 +msgid "Delete Template" +msgstr "" + #: templates/InvenTree/settings/global.html:10 msgid "Global InvenTree Settings" msgstr "" @@ -4372,22 +4492,14 @@ msgstr "" msgid "Part Options" msgstr "" -#: templates/InvenTree/settings/part.html:33 +#: templates/InvenTree/settings/part.html:34 msgid "Part Parameter Templates" msgstr "" -#: templates/InvenTree/settings/part.html:54 +#: templates/InvenTree/settings/part.html:55 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/part.html:74 -msgid "Edit Template" -msgstr "" - -#: templates/InvenTree/settings/part.html:75 -msgid "Delete Template" -msgstr "" - #: templates/InvenTree/settings/po.html:9 msgid "Purchase Order Settings" msgstr "" @@ -4434,6 +4546,10 @@ msgstr "" msgid "Global" msgstr "" +#: templates/InvenTree/settings/tabs.html:19 +msgid "Categories" +msgstr "" + #: templates/InvenTree/settings/theme.html:10 msgid "Theme Settings" msgstr "" @@ -4745,15 +4861,15 @@ msgstr "" msgid "No purchase orders found" msgstr "" -#: templates/js/order.js:180 templates/js/stock.js:677 +#: templates/js/order.js:181 templates/js/stock.js:677 msgid "Date" msgstr "" -#: templates/js/order.js:210 +#: templates/js/order.js:211 msgid "No sales orders found" msgstr "" -#: templates/js/order.js:267 +#: templates/js/order.js:268 msgid "Shipment Date" msgstr "" @@ -5163,38 +5279,38 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:131 +#: users/models.py:135 msgid "Permission set" msgstr "" -#: users/models.py:139 +#: users/models.py:143 msgid "Group" msgstr "" -#: users/models.py:142 +#: users/models.py:146 msgid "View" msgstr "" -#: users/models.py:142 +#: users/models.py:146 msgid "Permission to view items" msgstr "" -#: users/models.py:144 +#: users/models.py:148 msgid "Add" msgstr "" -#: users/models.py:144 +#: users/models.py:148 msgid "Permission to add items" msgstr "" -#: users/models.py:146 +#: users/models.py:150 msgid "Change" msgstr "" -#: users/models.py:146 +#: users/models.py:150 msgid "Permissions to edit items" msgstr "" -#: users/models.py:148 +#: users/models.py:152 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 976e28c2c6..f6cb0f4604 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-11-10 13:31+0000\n" +"POT-Creation-Date: 2020-11-12 22:05+1100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -26,27 +26,31 @@ msgstr "" msgid "No matching action found" msgstr "" -#: InvenTree/forms.py:107 build/forms.py:82 build/forms.py:170 +#: InvenTree/forms.py:108 build/forms.py:82 build/forms.py:170 msgid "Confirm" msgstr "" -#: InvenTree/forms.py:123 +#: InvenTree/forms.py:124 msgid "Confirm item deletion" msgstr "" -#: InvenTree/forms.py:155 +#: InvenTree/forms.py:156 msgid "Enter new password" msgstr "" -#: InvenTree/forms.py:162 +#: InvenTree/forms.py:163 msgid "Confirm new password" msgstr "" -#: InvenTree/forms.py:197 +#: InvenTree/forms.py:198 msgid "Apply Theme" msgstr "" -#: InvenTree/helpers.py:361 order/models.py:187 order/models.py:269 +#: InvenTree/forms.py:228 +msgid "Select Category" +msgstr "" + +#: InvenTree/helpers.py:361 order/models.py:189 order/models.py:271 msgid "Invalid quantity provided" msgstr "" @@ -99,19 +103,19 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/settings.py:350 +#: InvenTree/settings.py:354 msgid "English" msgstr "" -#: InvenTree/settings.py:351 +#: InvenTree/settings.py:355 msgid "German" msgstr "" -#: InvenTree/settings.py:352 +#: InvenTree/settings.py:356 msgid "French" msgstr "" -#: InvenTree/settings.py:353 +#: InvenTree/settings.py:357 msgid "Polish" msgstr "" @@ -172,57 +176,61 @@ msgstr "" msgid "Production" msgstr "" -#: InvenTree/validators.py:39 +#: InvenTree/validators.py:22 +msgid "Not a valid currency code" +msgstr "" + +#: InvenTree/validators.py:50 msgid "Invalid character in part name" msgstr "" -#: InvenTree/validators.py:52 +#: InvenTree/validators.py:63 msgid "IPN must match regex pattern" msgstr "" -#: InvenTree/validators.py:66 InvenTree/validators.py:80 -#: InvenTree/validators.py:94 +#: InvenTree/validators.py:77 InvenTree/validators.py:91 +#: InvenTree/validators.py:105 msgid "Reference must match pattern" msgstr "" -#: InvenTree/validators.py:102 +#: InvenTree/validators.py:113 #, python-brace-format msgid "Illegal character in name ({x})" msgstr "" -#: InvenTree/validators.py:121 InvenTree/validators.py:137 +#: InvenTree/validators.py:132 InvenTree/validators.py:148 msgid "Overage value must not be negative" msgstr "" -#: InvenTree/validators.py:139 +#: InvenTree/validators.py:150 msgid "Overage must not exceed 100%" msgstr "" -#: InvenTree/validators.py:146 +#: InvenTree/validators.py:157 msgid "Overage must be an integer value or a percentage" msgstr "" -#: InvenTree/views.py:493 +#: InvenTree/views.py:494 msgid "Delete Item" msgstr "" -#: InvenTree/views.py:542 +#: InvenTree/views.py:543 msgid "Check box to confirm item deletion" msgstr "" -#: InvenTree/views.py:557 templates/InvenTree/settings/user.html:18 +#: InvenTree/views.py:558 templates/InvenTree/settings/user.html:18 msgid "Edit User Information" msgstr "" -#: InvenTree/views.py:568 templates/InvenTree/settings/user.html:22 +#: InvenTree/views.py:569 templates/InvenTree/settings/user.html:22 msgid "Set Password" msgstr "" -#: InvenTree/views.py:587 +#: InvenTree/views.py:588 msgid "Password fields must match" msgstr "" -#: InvenTree/views.py:757 +#: InvenTree/views.py:794 msgid "Database Statistics" msgstr "" @@ -272,10 +280,10 @@ msgstr "" #: build/forms.py:70 build/templates/build/auto_allocate.html:17 #: build/templates/build/build_base.html:78 -#: build/templates/build/detail.html:29 -#: company/templates/company/supplier_part_pricing.html:75 +#: build/templates/build/detail.html:29 common/models.py:488 +#: company/forms.py:112 company/templates/company/supplier_part_pricing.html:75 #: order/templates/order/order_wizard/select_parts.html:32 -#: order/templates/order/purchase_order_detail.html:178 +#: order/templates/order/purchase_order_detail.html:179 #: order/templates/order/sales_order_detail.html:74 #: order/templates/order/sales_order_detail.html:156 #: part/templates/part/allocation.html:16 @@ -351,7 +359,7 @@ msgstr "" #: build/models.py:57 build/templates/build/index.html:6 #: build/templates/build/index.html:14 order/templates/order/so_builds.html:11 #: order/templates/order/so_tabs.html:9 part/templates/part/tabs.html:31 -#: templates/InvenTree/settings/tabs.html:25 users/models.py:30 +#: templates/InvenTree/settings/tabs.html:28 users/models.py:30 msgid "Build Orders" msgstr "" @@ -359,19 +367,20 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:73 order/templates/order/purchase_order_detail.html:173 +#: build/models.py:73 order/templates/order/purchase_order_detail.html:174 #: templates/js/bom.js:181 templates/js/build.js:493 msgid "Reference" msgstr "" #: build/models.py:80 build/templates/build/detail.html:19 +#: company/templates/company/detail.html:23 #: company/templates/company/supplier_part_base.html:61 #: company/templates/company/supplier_part_detail.html:27 -#: order/templates/order/purchase_order_detail.html:160 +#: order/templates/order/purchase_order_detail.html:161 #: part/templates/part/detail.html:51 part/templates/part/set_category.html:14 #: templates/InvenTree/search.html:147 templates/js/bom.js:174 #: templates/js/bom.js:499 templates/js/build.js:642 templates/js/company.js:56 -#: templates/js/order.js:167 templates/js/order.js:249 templates/js/part.js:188 +#: templates/js/order.js:168 templates/js/order.js:250 templates/js/part.js:188 #: templates/js/part.js:271 templates/js/part.js:391 templates/js/part.js:572 #: templates/js/stock.js:494 templates/js/stock.js:706 msgid "Description" @@ -392,10 +401,10 @@ msgstr "" #: build/models.py:97 build/templates/build/auto_allocate.html:16 #: build/templates/build/build_base.html:73 -#: build/templates/build/detail.html:24 order/models.py:519 +#: build/templates/build/detail.html:24 order/models.py:530 #: order/templates/order/order_wizard/select_parts.html:30 #: order/templates/order/purchase_order_detail.html:148 -#: order/templates/order/receive_parts.html:19 part/models.py:294 +#: order/templates/order/receive_parts.html:19 part/models.py:315 #: part/templates/part/part_app_base.html:7 part/templates/part/related.html:26 #: part/templates/part/set_category.html:13 templates/InvenTree/search.html:133 #: templates/js/barcode.js:336 templates/js/bom.js:147 templates/js/bom.js:484 @@ -475,13 +484,13 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:177 part/models.py:609 stock/models.py:386 +#: build/models.py:177 part/models.py:672 stock/models.py:386 msgid "Link to external URL" msgstr "" -#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:314 +#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:344 #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 -#: order/templates/order/purchase_order_detail.html:203 +#: order/templates/order/purchase_order_detail.html:213 #: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 #: stock/forms.py:307 stock/forms.py:339 stock/forms.py:367 stock/models.py:448 #: stock/models.py:1432 stock/templates/stock/tabs.html:26 @@ -528,11 +537,11 @@ msgstr "" msgid "Allocated quantity ({n}) must not exceed available quantity ({q})" msgstr "" -#: build/models.py:908 order/models.py:603 +#: build/models.py:908 order/models.py:614 msgid "StockItem is over-allocated" msgstr "" -#: build/models.py:912 order/models.py:606 +#: build/models.py:912 order/models.py:617 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -676,7 +685,7 @@ msgstr "" #: order/templates/order/receive_parts.html:24 #: stock/templates/stock/item_base.html:312 templates/InvenTree/search.html:175 #: templates/js/barcode.js:42 templates/js/build.js:675 -#: templates/js/order.js:172 templates/js/order.js:254 +#: templates/js/order.js:173 templates/js/order.js:255 #: templates/js/stock.js:557 templates/js/stock.js:961 msgid "Status" msgstr "" @@ -687,13 +696,13 @@ msgid "Progress" msgstr "" #: build/templates/build/build_base.html:101 -#: build/templates/build/detail.html:82 order/models.py:517 +#: build/templates/build/detail.html:82 order/models.py:528 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:33 #: order/templates/order/sales_order_notes.html:10 #: order/templates/order/sales_order_ship.html:25 #: part/templates/part/allocation.html:27 -#: stock/templates/stock/item_base.html:221 templates/js/order.js:221 +#: stock/templates/stock/item_base.html:221 templates/js/order.js:222 msgid "Sales Order" msgstr "" @@ -886,7 +895,7 @@ msgstr "" msgid "Create Build Output" msgstr "" -#: build/views.py:207 stock/models.py:827 stock/views.py:1647 +#: build/views.py:207 stock/models.py:827 stock/views.py:1660 msgid "Serial numbers already exist" msgstr "" @@ -902,7 +911,7 @@ msgstr "" msgid "Confirm unallocation of build stock" msgstr "" -#: build/views.py:303 build/views.py:388 stock/views.py:413 +#: build/views.py:303 build/views.py:388 stock/views.py:417 msgid "Check the confirmation box" msgstr "" @@ -991,8 +1000,8 @@ msgstr "" msgid "Add Build Order Attachment" msgstr "" -#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:166 -#: stock/views.py:176 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:168 +#: stock/views.py:180 msgid "Added attachment" msgstr "" @@ -1008,167 +1017,179 @@ msgstr "" msgid "Delete Attachment" msgstr "" -#: build/views.py:1122 order/views.py:240 order/views.py:255 stock/views.py:234 +#: build/views.py:1122 order/views.py:240 order/views.py:255 stock/views.py:238 msgid "Deleted attachment" msgstr "" -#: common/models.py:55 +#: common/models.py:56 msgid "InvenTree Instance Name" msgstr "" -#: common/models.py:57 +#: common/models.py:58 msgid "String descriptor for the server instance" msgstr "" -#: common/models.py:61 company/models.py:89 company/models.py:90 +#: common/models.py:62 company/models.py:95 company/models.py:96 msgid "Company name" msgstr "" -#: common/models.py:62 +#: common/models.py:63 msgid "Internal company name" msgstr "" -#: common/models.py:67 +#: common/models.py:68 msgid "Default Currency" msgstr "" -#: common/models.py:68 +#: common/models.py:69 msgid "Default currency" msgstr "" -#: common/models.py:74 +#: common/models.py:75 msgid "IPN Regex" msgstr "" -#: common/models.py:75 +#: common/models.py:76 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:79 +#: common/models.py:80 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:80 +#: common/models.py:81 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:86 +#: common/models.py:87 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:87 +#: common/models.py:88 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:93 +#: common/models.py:94 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:94 +#: common/models.py:95 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:100 +#: common/models.py:101 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:101 +#: common/models.py:102 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:107 part/models.py:680 part/templates/part/detail.html:168 +#: common/models.py:108 +msgid "Copy Category Parameter Templates" +msgstr "" + +#: common/models.py:109 +msgid "Copy category parameter templates when creating a part" +msgstr "" + +#: common/models.py:115 part/models.py:743 part/templates/part/detail.html:168 #: templates/js/table_filters.js:264 msgid "Component" msgstr "" -#: common/models.py:108 +#: common/models.py:116 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:114 part/models.py:691 part/templates/part/detail.html:188 +#: common/models.py:122 part/models.py:754 part/templates/part/detail.html:188 msgid "Purchaseable" msgstr "" -#: common/models.py:115 +#: common/models.py:123 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:121 part/models.py:696 part/templates/part/detail.html:198 +#: common/models.py:129 part/models.py:759 part/templates/part/detail.html:198 #: templates/js/table_filters.js:272 msgid "Salable" msgstr "" -#: common/models.py:122 +#: common/models.py:130 msgid "Parts are salable by default" msgstr "" -#: common/models.py:128 part/models.py:686 part/templates/part/detail.html:178 +#: common/models.py:136 part/models.py:749 part/templates/part/detail.html:178 #: templates/js/table_filters.js:31 templates/js/table_filters.js:276 msgid "Trackable" msgstr "" -#: common/models.py:129 +#: common/models.py:137 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:135 +#: common/models.py:143 msgid "Build Order Reference Prefix" msgstr "" -#: common/models.py:136 +#: common/models.py:144 msgid "Prefix value for build order reference" msgstr "" -#: common/models.py:141 +#: common/models.py:149 msgid "Build Order Reference Regex" msgstr "" -#: common/models.py:142 +#: common/models.py:150 msgid "Regular expression pattern for matching build order reference" msgstr "" -#: common/models.py:146 +#: common/models.py:154 msgid "Sales Order Reference Prefix" msgstr "" -#: common/models.py:147 +#: common/models.py:155 msgid "Prefix value for sales order reference" msgstr "" -#: common/models.py:151 +#: common/models.py:159 msgid "Purchase Order Reference Prefix" msgstr "" -#: common/models.py:152 +#: common/models.py:160 msgid "Prefix value for purchase order reference" msgstr "" -#: common/models.py:357 +#: common/models.py:373 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:359 +#: common/models.py:375 msgid "Settings value" msgstr "" -#: common/models.py:415 +#: common/models.py:431 msgid "Value must be a boolean value" msgstr "" -#: common/models.py:429 +#: common/models.py:445 msgid "Key string must be unique" msgstr "" -#: common/models.py:474 company/templates/company/supplier_part_pricing.html:80 +#: common/models.py:489 company/forms.py:113 +msgid "Price break quantity" +msgstr "" + +#: common/models.py:497 company/templates/company/supplier_part_pricing.html:80 #: part/templates/part/sale_prices.html:87 templates/js/bom.js:234 msgid "Price" msgstr "" -#: common/models.py:475 +#: common/models.py:498 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:498 +#: common/models.py:521 msgid "Default" msgstr "" @@ -1180,109 +1201,125 @@ msgstr "" msgid "Change Setting" msgstr "" -#: company/models.py:92 -msgid "Company description" +#: company/forms.py:37 company/models.py:139 +msgid "Default currency used for this company" msgstr "" -#: company/models.py:92 -msgid "Description of the company" +#: company/forms.py:80 +msgid "Single Price" msgstr "" -#: company/models.py:94 company/templates/company/company_base.html:57 -#: templates/js/company.js:61 -msgid "Website" -msgstr "" - -#: company/models.py:94 -msgid "Company website URL" -msgstr "" - -#: company/models.py:97 company/templates/company/company_base.html:64 -msgid "Address" +#: company/forms.py:82 +msgid "Single quantity price" msgstr "" #: company/models.py:98 +msgid "Company description" +msgstr "" + +#: company/models.py:98 +msgid "Description of the company" +msgstr "" + +#: company/models.py:100 company/templates/company/company_base.html:57 +#: company/templates/company/detail.html:28 templates/js/company.js:61 +msgid "Website" +msgstr "" + +#: company/models.py:100 +msgid "Company website URL" +msgstr "" + +#: company/models.py:103 company/templates/company/company_base.html:64 +msgid "Address" +msgstr "" + +#: company/models.py:104 msgid "Company address" msgstr "" -#: company/models.py:101 +#: company/models.py:107 msgid "Phone number" msgstr "" -#: company/models.py:102 +#: company/models.py:108 msgid "Contact phone number" msgstr "" -#: company/models.py:105 company/templates/company/company_base.html:78 +#: company/models.py:111 company/templates/company/company_base.html:78 msgid "Email" msgstr "" -#: company/models.py:105 +#: company/models.py:111 msgid "Contact email address" msgstr "" -#: company/models.py:108 company/templates/company/company_base.html:85 +#: company/models.py:114 company/templates/company/company_base.html:85 msgid "Contact" msgstr "" -#: company/models.py:109 +#: company/models.py:115 msgid "Point of contact" msgstr "" -#: company/models.py:111 +#: company/models.py:117 msgid "Link to external company information" msgstr "" -#: company/models.py:123 +#: company/models.py:129 msgid "Do you sell items to this company?" msgstr "" -#: company/models.py:125 +#: company/models.py:131 msgid "Do you purchase items from this company?" msgstr "" -#: company/models.py:127 +#: company/models.py:133 msgid "Does this company manufacture parts?" msgstr "" -#: company/models.py:283 stock/models.py:338 +#: company/models.py:137 company/templates/company/detail.html:37 +msgid "Currency" +msgstr "" + +#: company/models.py:313 stock/models.py:338 #: stock/templates/stock/item_base.html:177 msgid "Base Part" msgstr "" -#: company/models.py:288 +#: company/models.py:318 msgid "Select part" msgstr "" -#: company/models.py:294 +#: company/models.py:324 msgid "Select supplier" msgstr "" -#: company/models.py:297 +#: company/models.py:327 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:304 +#: company/models.py:334 msgid "Select manufacturer" msgstr "" -#: company/models.py:308 +#: company/models.py:338 msgid "Manufacturer part number" msgstr "" -#: company/models.py:310 +#: company/models.py:340 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:312 +#: company/models.py:342 msgid "Supplier part description" msgstr "" -#: company/models.py:316 +#: company/models.py:346 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:318 +#: company/models.py:348 msgid "Part packaging" msgstr "" @@ -1305,27 +1342,39 @@ msgstr "" msgid "Phone" msgstr "" -#: company/templates/company/detail.html:16 +#: company/templates/company/detail.html:18 +msgid "Company Name" +msgstr "" + +#: company/templates/company/detail.html:31 +msgid "No website specified" +msgstr "" + +#: company/templates/company/detail.html:40 +msgid "Uses default currency" +msgstr "" + +#: company/templates/company/detail.html:52 #: company/templates/company/supplier_part_base.html:84 #: company/templates/company/supplier_part_detail.html:30 part/bom.py:172 #: templates/js/company.js:44 templates/js/company.js:188 msgid "Manufacturer" msgstr "" -#: company/templates/company/detail.html:21 +#: company/templates/company/detail.html:57 #: company/templates/company/supplier_part_base.html:74 #: company/templates/company/supplier_part_detail.html:21 #: order/templates/order/order_base.html:79 #: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:170 #: stock/templates/stock/item_base.html:287 templates/js/company.js:48 -#: templates/js/company.js:164 templates/js/order.js:154 +#: templates/js/company.js:164 templates/js/order.js:155 msgid "Supplier" msgstr "" -#: company/templates/company/detail.html:26 +#: company/templates/company/detail.html:62 #: order/templates/order/sales_order_base.html:81 stock/models.py:373 #: stock/models.py:374 stock/templates/stock/item_base.html:204 -#: templates/js/company.js:40 templates/js/order.js:236 +#: templates/js/company.js:40 templates/js/order.js:237 msgid "Customer" msgstr "" @@ -1372,21 +1421,21 @@ msgstr "" msgid "Create new Part" msgstr "" -#: company/templates/company/detail_part.html:69 company/views.py:55 +#: company/templates/company/detail_part.html:69 company/views.py:56 #: part/templates/part/supplier.html:47 msgid "New Supplier" msgstr "" -#: company/templates/company/detail_part.html:70 company/views.py:194 +#: company/templates/company/detail_part.html:70 company/views.py:195 msgid "Create new Supplier" msgstr "" -#: company/templates/company/detail_part.html:75 company/views.py:62 +#: company/templates/company/detail_part.html:75 company/views.py:63 #: part/templates/part/supplier.html:53 msgid "New Manufacturer" msgstr "" -#: company/templates/company/detail_part.html:76 company/views.py:197 +#: company/templates/company/detail_part.html:76 company/views.py:198 msgid "Create new Manufacturer" msgstr "" @@ -1420,7 +1469,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:7 #: order/templates/order/purchase_orders.html:12 #: part/templates/part/orders.html:9 part/templates/part/tabs.html:48 -#: templates/InvenTree/settings/tabs.html:28 templates/navbar.html:33 +#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:33 #: users/models.py:31 msgid "Purchase Orders" msgstr "" @@ -1440,7 +1489,7 @@ msgstr "" #: order/templates/order/sales_orders.html:7 #: order/templates/order/sales_orders.html:12 #: part/templates/part/sales_orders.html:9 part/templates/part/tabs.html:56 -#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:42 +#: templates/InvenTree/settings/tabs.html:34 templates/navbar.html:42 #: users/models.py:32 msgid "Sales Orders" msgstr "" @@ -1513,8 +1562,8 @@ msgstr "" msgid "Pricing Information" msgstr "" -#: company/templates/company/supplier_part_pricing.html:17 company/views.py:412 -#: part/templates/part/sale_prices.html:14 part/views.py:2350 +#: company/templates/company/supplier_part_pricing.html:17 company/views.py:459 +#: part/templates/part/sale_prices.html:14 part/views.py:2546 msgid "Add Price Break" msgstr "" @@ -1544,7 +1593,7 @@ msgstr "" #: company/templates/company/supplier_part_tabs.html:8 #: company/templates/company/tabs.html:12 part/templates/part/tabs.html:18 #: stock/templates/stock/location.html:17 templates/InvenTree/search.html:155 -#: templates/InvenTree/settings/tabs.html:22 templates/js/part.js:192 +#: templates/InvenTree/settings/tabs.html:25 templates/js/part.js:192 #: templates/js/part.js:418 templates/js/stock.js:502 templates/navbar.html:22 #: users/models.py:29 msgid "Stock" @@ -1555,96 +1604,96 @@ msgid "Orders" msgstr "" #: company/templates/company/tabs.html:9 -#: order/templates/order/receive_parts.html:14 part/models.py:295 +#: order/templates/order/receive_parts.html:14 part/models.py:316 #: part/templates/part/cat_link.html:7 part/templates/part/category.html:94 #: part/templates/part/category_tabs.html:6 -#: templates/InvenTree/settings/tabs.html:19 templates/navbar.html:19 +#: templates/InvenTree/settings/tabs.html:22 templates/navbar.html:19 #: templates/stats.html:8 templates/stats.html:17 users/models.py:28 msgid "Parts" msgstr "" -#: company/views.py:54 part/templates/part/tabs.html:42 +#: company/views.py:55 part/templates/part/tabs.html:42 #: templates/navbar.html:31 msgid "Suppliers" msgstr "" -#: company/views.py:61 templates/navbar.html:32 +#: company/views.py:62 templates/navbar.html:32 msgid "Manufacturers" msgstr "" -#: company/views.py:68 templates/navbar.html:41 +#: company/views.py:69 templates/navbar.html:41 msgid "Customers" msgstr "" -#: company/views.py:69 +#: company/views.py:70 msgid "New Customer" msgstr "" -#: company/views.py:77 +#: company/views.py:78 msgid "Companies" msgstr "" -#: company/views.py:78 +#: company/views.py:79 msgid "New Company" msgstr "" -#: company/views.py:156 +#: company/views.py:157 msgid "Update Company Image" msgstr "" -#: company/views.py:162 +#: company/views.py:163 msgid "Updated company image" msgstr "" -#: company/views.py:172 +#: company/views.py:173 msgid "Edit Company" msgstr "" -#: company/views.py:177 +#: company/views.py:178 msgid "Edited company information" msgstr "" -#: company/views.py:200 +#: company/views.py:201 msgid "Create new Customer" msgstr "" -#: company/views.py:202 +#: company/views.py:203 msgid "Create new Company" msgstr "" -#: company/views.py:229 +#: company/views.py:230 msgid "Created new company" msgstr "" -#: company/views.py:239 +#: company/views.py:240 msgid "Delete Company" msgstr "" -#: company/views.py:245 +#: company/views.py:246 msgid "Company was deleted" msgstr "" -#: company/views.py:270 +#: company/views.py:271 msgid "Edit Supplier Part" msgstr "" -#: company/views.py:280 templates/js/stock.js:846 +#: company/views.py:289 templates/js/stock.js:846 msgid "Create new Supplier Part" msgstr "" -#: company/views.py:341 +#: company/views.py:388 msgid "Delete Supplier Part" msgstr "" -#: company/views.py:418 part/views.py:2356 +#: company/views.py:465 part/views.py:2552 msgid "Added new price break" msgstr "" -#: company/views.py:454 part/views.py:2400 +#: company/views.py:521 part/views.py:2596 msgid "Edit Price Break" msgstr "" -#: company/views.py:470 part/views.py:2416 +#: company/views.py:537 part/views.py:2612 msgid "Delete Price Break" msgstr "" @@ -1701,114 +1750,123 @@ msgstr "" msgid "Enter sales order number" msgstr "" -#: order/models.py:108 +#: order/models.py:110 msgid "Order reference" msgstr "" -#: order/models.py:110 +#: order/models.py:112 msgid "Order description" msgstr "" -#: order/models.py:112 +#: order/models.py:114 msgid "Link to external page" msgstr "" -#: order/models.py:122 +#: order/models.py:124 msgid "Order notes" msgstr "" -#: order/models.py:140 order/models.py:326 +#: order/models.py:142 order/models.py:328 msgid "Purchase order status" msgstr "" -#: order/models.py:148 +#: order/models.py:150 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:151 +#: order/models.py:153 msgid "Supplier order reference code" msgstr "" -#: order/models.py:160 +#: order/models.py:162 msgid "Date order was issued" msgstr "" -#: order/models.py:162 +#: order/models.py:164 msgid "Date order was completed" msgstr "" -#: order/models.py:185 order/models.py:267 part/views.py:1479 +#: order/models.py:187 order/models.py:269 part/views.py:1496 #: stock/models.py:244 stock/models.py:811 msgid "Quantity must be greater than zero" msgstr "" -#: order/models.py:190 +#: order/models.py:192 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:262 +#: order/models.py:264 msgid "Lines can only be received against an order marked as 'Placed'" msgstr "" -#: order/models.py:322 +#: order/models.py:324 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:328 +#: order/models.py:330 msgid "Customer order reference code" msgstr "" -#: order/models.py:367 +#: order/models.py:369 msgid "SalesOrder cannot be shipped as it is not currently pending" msgstr "" -#: order/models.py:454 +#: order/models.py:456 msgid "Item quantity" msgstr "" -#: order/models.py:456 +#: order/models.py:458 msgid "Line item reference" msgstr "" -#: order/models.py:458 +#: order/models.py:460 msgid "Line item notes" msgstr "" -#: order/models.py:484 order/templates/order/order_base.html:9 +#: order/models.py:486 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:24 #: stock/templates/stock/item_base.html:259 templates/js/order.js:139 msgid "Purchase Order" msgstr "" -#: order/models.py:497 +#: order/models.py:499 msgid "Supplier part" msgstr "" -#: order/models.py:500 +#: order/models.py:502 msgid "Number of items received" msgstr "" -#: order/models.py:594 +#: order/models.py:509 stock/models.py:457 +#: stock/templates/stock/item_base.html:266 +msgid "Purchase Price" +msgstr "" + +#: order/models.py:510 +msgid "Unit purchase price" +msgstr "" + +#: order/models.py:605 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:596 +#: order/models.py:607 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:599 +#: order/models.py:610 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:609 +#: order/models.py:620 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:625 +#: order/models.py:636 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:628 +#: order/models.py:639 msgid "Enter stock allocation quantity" msgstr "" @@ -1844,7 +1902,7 @@ msgstr "" msgid "Order Status" msgstr "" -#: order/templates/order/order_base.html:85 templates/js/order.js:161 +#: order/templates/order/order_base.html:85 templates/js/order.js:162 msgid "Supplier Reference" msgstr "" @@ -1853,7 +1911,7 @@ msgid "Issued" msgstr "" #: order/templates/order/order_base.html:111 -#: order/templates/order/purchase_order_detail.html:183 +#: order/templates/order/purchase_order_detail.html:193 #: order/templates/order/receive_parts.html:22 #: order/templates/order/sales_order_base.html:113 msgid "Received" @@ -1900,7 +1958,7 @@ msgid "Select existing purchase orders, or create new orders." msgstr "" #: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/order.js:185 templates/js/order.js:272 +#: templates/js/order.js:186 templates/js/order.js:273 msgid "Items" msgstr "" @@ -1952,21 +2010,25 @@ msgstr "" msgid "No line items found" msgstr "" -#: order/templates/order/purchase_order_detail.html:165 +#: order/templates/order/purchase_order_detail.html:166 #: order/templates/order/receive_parts.html:20 msgid "Order Code" msgstr "" -#: order/templates/order/purchase_order_detail.html:214 +#: order/templates/order/purchase_order_detail.html:184 +msgid "Unit Price" +msgstr "" + +#: order/templates/order/purchase_order_detail.html:225 #: order/templates/order/sales_order_detail.html:285 msgid "Edit line item" msgstr "" -#: order/templates/order/purchase_order_detail.html:215 +#: order/templates/order/purchase_order_detail.html:226 msgid "Delete line item" msgstr "" -#: order/templates/order/purchase_order_detail.html:220 +#: order/templates/order/purchase_order_detail.html:231 msgid "Receive line item" msgstr "" @@ -2003,7 +2065,7 @@ msgstr "" msgid "Sales Order Details" msgstr "" -#: order/templates/order/sales_order_base.html:87 templates/js/order.js:243 +#: order/templates/order/sales_order_base.html:87 templates/js/order.js:244 msgid "Customer Reference" msgstr "" @@ -2256,367 +2318,389 @@ msgstr "" msgid "Error reading BOM file (incorrect row size)" msgstr "" -#: part/forms.py:60 stock/forms.py:255 +#: part/forms.py:61 stock/forms.py:255 msgid "File Format" msgstr "" -#: part/forms.py:60 stock/forms.py:255 +#: part/forms.py:61 stock/forms.py:255 msgid "Select output file format" msgstr "" -#: part/forms.py:62 +#: part/forms.py:63 msgid "Cascading" msgstr "" -#: part/forms.py:62 +#: part/forms.py:63 msgid "Download cascading / multi-level BOM" msgstr "" -#: part/forms.py:64 +#: part/forms.py:65 msgid "Levels" msgstr "" -#: part/forms.py:64 +#: part/forms.py:65 msgid "Select maximum number of BOM levels to export (0 = all levels)" msgstr "" -#: part/forms.py:66 +#: part/forms.py:67 msgid "Include Parameter Data" msgstr "" -#: part/forms.py:66 +#: part/forms.py:67 msgid "Include part parameters data in exported BOM" msgstr "" -#: part/forms.py:68 +#: part/forms.py:69 msgid "Include Stock Data" msgstr "" -#: part/forms.py:68 +#: part/forms.py:69 msgid "Include part stock data in exported BOM" msgstr "" -#: part/forms.py:70 +#: part/forms.py:71 msgid "Include Supplier Data" msgstr "" -#: part/forms.py:70 +#: part/forms.py:71 msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:91 part/models.py:1644 +#: part/forms.py:92 part/models.py:1715 msgid "Parent Part" msgstr "" -#: part/forms.py:92 part/templates/part/bom_duplicate.html:7 +#: part/forms.py:93 part/templates/part/bom_duplicate.html:7 msgid "Select parent part to copy BOM from" msgstr "" -#: part/forms.py:98 +#: part/forms.py:99 msgid "Clear existing BOM items" msgstr "" -#: part/forms.py:103 +#: part/forms.py:104 msgid "Confirm BOM duplication" msgstr "" -#: part/forms.py:121 +#: part/forms.py:122 msgid "Confirm that the BOM is correct" msgstr "" -#: part/forms.py:133 +#: part/forms.py:134 msgid "Select BOM file to upload" msgstr "" -#: part/forms.py:152 +#: part/forms.py:153 msgid "Related Part" msgstr "" -#: part/forms.py:171 +#: part/forms.py:172 msgid "Select part category" msgstr "" -#: part/forms.py:187 +#: part/forms.py:188 msgid "Duplicate all BOM data for this part" msgstr "" -#: part/forms.py:188 +#: part/forms.py:189 msgid "Copy BOM" msgstr "" -#: part/forms.py:193 +#: part/forms.py:194 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:194 +#: part/forms.py:195 msgid "Copy Parameters" msgstr "" -#: part/forms.py:199 +#: part/forms.py:200 msgid "Confirm part creation" msgstr "" -#: part/forms.py:296 +#: part/forms.py:205 +msgid "Include category parameter templates" +msgstr "" + +#: part/forms.py:210 +msgid "Include parent categories parameter templates" +msgstr "" + +#: part/forms.py:285 +msgid "Add parameter template to same level categories" +msgstr "" + +#: part/forms.py:289 +msgid "Add parameter template to all categories" +msgstr "" + +#: part/forms.py:331 msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:67 +#: part/models.py:68 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:70 +#: part/models.py:71 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:76 part/templates/part/part_app_base.html:9 +#: part/models.py:77 part/models.py:1760 +#: part/templates/part/part_app_base.html:9 msgid "Part Category" msgstr "" -#: part/models.py:77 part/templates/part/category.html:18 +#: part/models.py:78 part/templates/part/category.html:18 #: part/templates/part/category.html:89 templates/stats.html:12 msgid "Part Categories" msgstr "" -#: part/models.py:346 part/models.py:356 +#: part/models.py:408 part/models.py:418 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:453 +#: part/models.py:515 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:457 +#: part/models.py:519 msgid "Next available serial number is" msgstr "" -#: part/models.py:462 +#: part/models.py:524 msgid "Most recent serial number is" msgstr "" -#: part/models.py:541 +#: part/models.py:603 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:552 +#: part/models.py:614 msgid "Part must be unique for name, IPN and revision" msgstr "" -#: part/models.py:581 part/templates/part/detail.html:19 +#: part/models.py:644 part/templates/part/detail.html:19 msgid "Part name" msgstr "" -#: part/models.py:585 +#: part/models.py:648 msgid "Is this part a template part?" msgstr "" -#: part/models.py:594 +#: part/models.py:657 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:596 +#: part/models.py:659 msgid "Part description" msgstr "" -#: part/models.py:598 +#: part/models.py:661 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:603 +#: part/models.py:666 msgid "Part category" msgstr "" -#: part/models.py:605 +#: part/models.py:668 msgid "Internal Part Number" msgstr "" -#: part/models.py:607 +#: part/models.py:670 msgid "Part revision or version number" msgstr "" -#: part/models.py:621 +#: part/models.py:684 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:665 +#: part/models.py:728 msgid "Default supplier part" msgstr "" -#: part/models.py:668 +#: part/models.py:731 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:670 +#: part/models.py:733 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:674 part/templates/part/detail.html:158 +#: part/models.py:737 part/templates/part/detail.html:158 #: templates/js/table_filters.js:260 msgid "Assembly" msgstr "" -#: part/models.py:675 +#: part/models.py:738 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:681 +#: part/models.py:744 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:687 +#: part/models.py:750 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:692 +#: part/models.py:755 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:697 +#: part/models.py:760 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:701 part/templates/part/detail.html:215 +#: part/models.py:764 part/templates/part/detail.html:215 #: templates/js/table_filters.js:19 templates/js/table_filters.js:55 #: templates/js/table_filters.js:186 templates/js/table_filters.js:243 msgid "Active" msgstr "" -#: part/models.py:702 +#: part/models.py:765 msgid "Is this part active?" msgstr "" -#: part/models.py:706 part/templates/part/detail.html:138 +#: part/models.py:769 part/templates/part/detail.html:138 #: templates/js/table_filters.js:27 msgid "Virtual" msgstr "" -#: part/models.py:707 +#: part/models.py:770 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:709 +#: part/models.py:772 msgid "Part notes - supports Markdown formatting" msgstr "" -#: part/models.py:711 +#: part/models.py:774 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1517 +#: part/models.py:1588 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:1534 +#: part/models.py:1605 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:1553 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1624 templates/js/part.js:567 templates/js/stock.js:92 msgid "Test Name" msgstr "" -#: part/models.py:1554 +#: part/models.py:1625 msgid "Enter a name for the test" msgstr "" -#: part/models.py:1559 +#: part/models.py:1630 msgid "Test Description" msgstr "" -#: part/models.py:1560 +#: part/models.py:1631 msgid "Enter description for this test" msgstr "" -#: part/models.py:1565 templates/js/part.js:576 +#: part/models.py:1636 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "" -#: part/models.py:1566 +#: part/models.py:1637 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1571 templates/js/part.js:584 +#: part/models.py:1642 templates/js/part.js:584 msgid "Requires Value" msgstr "" -#: part/models.py:1572 +#: part/models.py:1643 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1577 templates/js/part.js:591 +#: part/models.py:1648 templates/js/part.js:591 msgid "Requires Attachment" msgstr "" -#: part/models.py:1578 +#: part/models.py:1649 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1611 +#: part/models.py:1682 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:1616 +#: part/models.py:1687 msgid "Parameter Name" msgstr "" -#: part/models.py:1618 +#: part/models.py:1689 msgid "Parameter Units" msgstr "" -#: part/models.py:1646 +#: part/models.py:1717 part/models.py:1765 +#: templates/InvenTree/settings/category.html:62 msgid "Parameter Template" msgstr "" -#: part/models.py:1648 +#: part/models.py:1719 msgid "Parameter Value" msgstr "" -#: part/models.py:1685 +#: part/models.py:1769 +msgid "Default Parameter Value" +msgstr "" + +#: part/models.py:1799 msgid "Select parent part" msgstr "" -#: part/models.py:1693 +#: part/models.py:1807 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:1699 +#: part/models.py:1813 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:1701 +#: part/models.py:1815 msgid "This BOM item is optional" msgstr "" -#: part/models.py:1704 +#: part/models.py:1818 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:1707 +#: part/models.py:1821 msgid "BOM item reference" msgstr "" -#: part/models.py:1710 +#: part/models.py:1824 msgid "BOM item notes" msgstr "" -#: part/models.py:1712 +#: part/models.py:1826 msgid "BOM line checksum" msgstr "" -#: part/models.py:1779 part/views.py:1485 part/views.py:1537 +#: part/models.py:1893 part/views.py:1502 part/views.py:1554 #: stock/models.py:234 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:1795 +#: part/models.py:1909 msgid "BOM Item" msgstr "" -#: part/models.py:1910 +#: part/models.py:2024 msgid "Select Related Part" msgstr "" -#: part/models.py:1942 +#: part/models.py:2056 msgid "" "Error creating relationship: check that the part is not related to itself " "and that the relationship is unique" @@ -2704,7 +2788,7 @@ msgstr "" msgid "Validate" msgstr "" -#: part/templates/part/bom.html:62 part/views.py:1776 +#: part/templates/part/bom.html:62 part/views.py:1793 msgid "Export Bill of Materials" msgstr "" @@ -2800,7 +2884,7 @@ msgstr "" msgid "All parts" msgstr "" -#: part/templates/part/category.html:24 part/views.py:2167 +#: part/templates/part/category.html:24 part/views.py:2184 msgid "Create new part category" msgstr "" @@ -2872,7 +2956,7 @@ msgstr "" msgid "Create new Part Category" msgstr "" -#: part/templates/part/category.html:216 stock/views.py:1338 +#: part/templates/part/category.html:216 stock/views.py:1342 msgid "Create new Stock Location" msgstr "" @@ -2934,7 +3018,7 @@ msgstr "" msgid "Minimum Stock" msgstr "" -#: part/templates/part/detail.html:114 templates/js/order.js:262 +#: part/templates/part/detail.html:114 templates/js/order.js:263 msgid "Creation Date" msgstr "" @@ -3023,7 +3107,9 @@ msgstr "" msgid "Add new parameter" msgstr "" -#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:37 +#: part/templates/part/params.html:15 +#: templates/InvenTree/settings/category.html:29 +#: templates/InvenTree/settings/part.html:38 msgid "New Parameter" msgstr "" @@ -3033,7 +3119,7 @@ msgid "Value" msgstr "" #: part/templates/part/params.html:41 part/templates/part/related.html:41 -#: part/templates/part/supplier.html:19 users/models.py:148 +#: part/templates/part/supplier.html:19 users/models.py:152 msgid "Delete" msgstr "" @@ -3241,208 +3327,220 @@ msgstr "" msgid "New Variant" msgstr "" -#: part/views.py:82 +#: part/views.py:84 msgid "Add Related Part" msgstr "" -#: part/views.py:138 +#: part/views.py:140 msgid "Delete Related Part" msgstr "" -#: part/views.py:150 +#: part/views.py:152 msgid "Add part attachment" msgstr "" -#: part/views.py:205 templates/attachment_table.html:34 +#: part/views.py:207 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "" -#: part/views.py:211 +#: part/views.py:213 msgid "Part attachment updated" msgstr "" -#: part/views.py:226 +#: part/views.py:228 msgid "Delete Part Attachment" msgstr "" -#: part/views.py:234 +#: part/views.py:236 msgid "Deleted part attachment" msgstr "" -#: part/views.py:243 +#: part/views.py:245 msgid "Create Test Template" msgstr "" -#: part/views.py:272 +#: part/views.py:274 msgid "Edit Test Template" msgstr "" -#: part/views.py:288 +#: part/views.py:290 msgid "Delete Test Template" msgstr "" -#: part/views.py:297 +#: part/views.py:299 msgid "Set Part Category" msgstr "" -#: part/views.py:347 +#: part/views.py:349 #, python-brace-format msgid "Set category for {n} parts" msgstr "" -#: part/views.py:382 +#: part/views.py:384 msgid "Create Variant" msgstr "" -#: part/views.py:464 +#: part/views.py:466 msgid "Duplicate Part" msgstr "" -#: part/views.py:471 +#: part/views.py:473 msgid "Copied part" msgstr "" -#: part/views.py:525 part/views.py:655 +#: part/views.py:527 part/views.py:661 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:590 templates/js/stock.js:840 +#: part/views.py:592 templates/js/stock.js:840 msgid "Create New Part" msgstr "" -#: part/views.py:597 +#: part/views.py:599 msgid "Created new part" msgstr "" -#: part/views.py:813 +#: part/views.py:830 msgid "Part QR Code" msgstr "" -#: part/views.py:832 +#: part/views.py:849 msgid "Upload Part Image" msgstr "" -#: part/views.py:840 part/views.py:877 +#: part/views.py:857 part/views.py:894 msgid "Updated part image" msgstr "" -#: part/views.py:849 +#: part/views.py:866 msgid "Select Part Image" msgstr "" -#: part/views.py:880 +#: part/views.py:897 msgid "Part image not found" msgstr "" -#: part/views.py:891 +#: part/views.py:908 msgid "Edit Part Properties" msgstr "" -#: part/views.py:918 +#: part/views.py:935 msgid "Duplicate BOM" msgstr "" -#: part/views.py:949 +#: part/views.py:966 msgid "Confirm duplication of BOM from parent" msgstr "" -#: part/views.py:970 +#: part/views.py:987 msgid "Validate BOM" msgstr "" -#: part/views.py:993 +#: part/views.py:1010 msgid "Confirm that the BOM is valid" msgstr "" -#: part/views.py:1004 +#: part/views.py:1021 msgid "Validated Bill of Materials" msgstr "" -#: part/views.py:1138 +#: part/views.py:1155 msgid "No BOM file provided" msgstr "" -#: part/views.py:1488 +#: part/views.py:1505 msgid "Enter a valid quantity" msgstr "" -#: part/views.py:1513 part/views.py:1516 +#: part/views.py:1530 part/views.py:1533 msgid "Select valid part" msgstr "" -#: part/views.py:1522 +#: part/views.py:1539 msgid "Duplicate part selected" msgstr "" -#: part/views.py:1560 +#: part/views.py:1577 msgid "Select a part" msgstr "" -#: part/views.py:1566 +#: part/views.py:1583 msgid "Selected part creates a circular BOM" msgstr "" -#: part/views.py:1570 +#: part/views.py:1587 msgid "Specify quantity" msgstr "" -#: part/views.py:1826 +#: part/views.py:1843 msgid "Confirm Part Deletion" msgstr "" -#: part/views.py:1835 +#: part/views.py:1852 msgid "Part was deleted" msgstr "" -#: part/views.py:1844 +#: part/views.py:1861 msgid "Part Pricing" msgstr "" -#: part/views.py:1958 +#: part/views.py:1975 msgid "Create Part Parameter Template" msgstr "" -#: part/views.py:1968 +#: part/views.py:1985 msgid "Edit Part Parameter Template" msgstr "" -#: part/views.py:1977 +#: part/views.py:1994 msgid "Delete Part Parameter Template" msgstr "" -#: part/views.py:1987 +#: part/views.py:2004 msgid "Create Part Parameter" msgstr "" -#: part/views.py:2039 +#: part/views.py:2056 msgid "Edit Part Parameter" msgstr "" -#: part/views.py:2055 +#: part/views.py:2072 msgid "Delete Part Parameter" msgstr "" -#: part/views.py:2114 +#: part/views.py:2131 msgid "Edit Part Category" msgstr "" -#: part/views.py:2151 +#: part/views.py:2168 msgid "Delete Part Category" msgstr "" -#: part/views.py:2159 +#: part/views.py:2176 msgid "Part category was deleted" msgstr "" -#: part/views.py:2222 +#: part/views.py:2232 +msgid "Create Category Parameter Template" +msgstr "" + +#: part/views.py:2335 +msgid "Edit Category Parameter Template" +msgstr "" + +#: part/views.py:2393 +msgid "Delete Category Parameter Template" +msgstr "" + +#: part/views.py:2418 msgid "Create BOM Item" msgstr "" -#: part/views.py:2290 +#: part/views.py:2486 msgid "Edit BOM item" msgstr "" -#: part/views.py:2340 +#: part/views.py:2536 msgid "Confim BOM item deletion" msgstr "" @@ -3526,7 +3624,7 @@ msgstr "" msgid "Add note (required)" msgstr "" -#: stock/forms.py:371 stock/views.py:916 stock/views.py:1114 +#: stock/forms.py:371 stock/views.py:920 stock/views.py:1118 msgid "Confirm stock adjustment" msgstr "" @@ -3644,10 +3742,6 @@ msgstr "" msgid "Stock Item Notes" msgstr "" -#: stock/models.py:457 stock/templates/stock/item_base.html:266 -msgid "Purchase Price" -msgstr "" - #: stock/models.py:458 msgid "Single unit purchase price at time of purchase" msgstr "" @@ -4041,7 +4135,7 @@ msgstr "" msgid "The following stock items will be uninstalled" msgstr "" -#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:1310 +#: stock/templates/stock/stockitem_convert.html:7 stock/views.py:1314 msgid "Convert Stock Item" msgstr "" @@ -4073,222 +4167,222 @@ msgstr "" msgid "Installed Items" msgstr "" -#: stock/views.py:119 +#: stock/views.py:123 msgid "Edit Stock Location" msgstr "" -#: stock/views.py:144 +#: stock/views.py:148 msgid "Stock Location QR code" msgstr "" -#: stock/views.py:163 +#: stock/views.py:167 msgid "Add Stock Item Attachment" msgstr "" -#: stock/views.py:210 +#: stock/views.py:214 msgid "Edit Stock Item Attachment" msgstr "" -#: stock/views.py:227 +#: stock/views.py:231 msgid "Delete Stock Item Attachment" msgstr "" -#: stock/views.py:244 +#: stock/views.py:248 msgid "Assign to Customer" msgstr "" -#: stock/views.py:254 +#: stock/views.py:258 msgid "Customer must be specified" msgstr "" -#: stock/views.py:278 +#: stock/views.py:282 msgid "Return to Stock" msgstr "" -#: stock/views.py:288 +#: stock/views.py:292 msgid "Specify a valid location" msgstr "" -#: stock/views.py:299 +#: stock/views.py:303 msgid "Stock item returned from customer" msgstr "" -#: stock/views.py:309 +#: stock/views.py:313 msgid "Select Label Template" msgstr "" -#: stock/views.py:332 +#: stock/views.py:336 msgid "Select valid label" msgstr "" -#: stock/views.py:396 +#: stock/views.py:400 msgid "Delete All Test Data" msgstr "" -#: stock/views.py:412 +#: stock/views.py:416 msgid "Confirm test data deletion" msgstr "" -#: stock/views.py:432 +#: stock/views.py:436 msgid "Add Test Result" msgstr "" -#: stock/views.py:473 +#: stock/views.py:477 msgid "Edit Test Result" msgstr "" -#: stock/views.py:491 +#: stock/views.py:495 msgid "Delete Test Result" msgstr "" -#: stock/views.py:503 +#: stock/views.py:507 msgid "Select Test Report Template" msgstr "" -#: stock/views.py:518 +#: stock/views.py:522 msgid "Select valid template" msgstr "" -#: stock/views.py:571 +#: stock/views.py:575 msgid "Stock Export Options" msgstr "" -#: stock/views.py:693 +#: stock/views.py:697 msgid "Stock Item QR Code" msgstr "" -#: stock/views.py:719 +#: stock/views.py:723 msgid "Install Stock Item" msgstr "" -#: stock/views.py:819 +#: stock/views.py:823 msgid "Uninstall Stock Items" msgstr "" -#: stock/views.py:927 +#: stock/views.py:931 msgid "Uninstalled stock items" msgstr "" -#: stock/views.py:952 +#: stock/views.py:956 msgid "Adjust Stock" msgstr "" -#: stock/views.py:1062 +#: stock/views.py:1066 msgid "Move Stock Items" msgstr "" -#: stock/views.py:1063 +#: stock/views.py:1067 msgid "Count Stock Items" msgstr "" -#: stock/views.py:1064 +#: stock/views.py:1068 msgid "Remove From Stock" msgstr "" -#: stock/views.py:1065 +#: stock/views.py:1069 msgid "Add Stock Items" msgstr "" -#: stock/views.py:1066 +#: stock/views.py:1070 msgid "Delete Stock Items" msgstr "" -#: stock/views.py:1094 +#: stock/views.py:1098 msgid "Must enter integer value" msgstr "" -#: stock/views.py:1099 +#: stock/views.py:1103 msgid "Quantity must be positive" msgstr "" -#: stock/views.py:1106 +#: stock/views.py:1110 #, python-brace-format msgid "Quantity must not exceed {x}" msgstr "" -#: stock/views.py:1185 +#: stock/views.py:1189 #, python-brace-format msgid "Added stock to {n} items" msgstr "" -#: stock/views.py:1200 +#: stock/views.py:1204 #, python-brace-format msgid "Removed stock from {n} items" msgstr "" -#: stock/views.py:1213 +#: stock/views.py:1217 #, python-brace-format msgid "Counted stock for {n} items" msgstr "" -#: stock/views.py:1241 +#: stock/views.py:1245 msgid "No items were moved" msgstr "" -#: stock/views.py:1244 +#: stock/views.py:1248 #, python-brace-format msgid "Moved {n} items to {dest}" msgstr "" -#: stock/views.py:1263 +#: stock/views.py:1267 #, python-brace-format msgid "Deleted {n} stock items" msgstr "" -#: stock/views.py:1275 +#: stock/views.py:1279 msgid "Edit Stock Item" msgstr "" -#: stock/views.py:1360 +#: stock/views.py:1364 msgid "Serialize Stock" msgstr "" -#: stock/views.py:1454 templates/js/build.js:210 +#: stock/views.py:1458 templates/js/build.js:210 msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1555 +#: stock/views.py:1559 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1621 +#: stock/views.py:1634 msgid "Invalid quantity" msgstr "" -#: stock/views.py:1624 +#: stock/views.py:1637 msgid "Quantity cannot be less than zero" msgstr "" -#: stock/views.py:1628 +#: stock/views.py:1641 msgid "Invalid part selection" msgstr "" -#: stock/views.py:1676 +#: stock/views.py:1689 #, python-brace-format msgid "Created {n} new stock items" msgstr "" -#: stock/views.py:1695 stock/views.py:1711 +#: stock/views.py:1708 stock/views.py:1724 msgid "Created new stock item" msgstr "" -#: stock/views.py:1730 +#: stock/views.py:1743 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1744 +#: stock/views.py:1757 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1756 +#: stock/views.py:1769 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1775 +#: stock/views.py:1788 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1785 +#: stock/views.py:1798 msgid "Add Stock Tracking Entry" msgstr "" @@ -4360,6 +4454,32 @@ msgstr "" msgid "Build Order Settings" msgstr "" +#: templates/InvenTree/settings/category.html:9 +msgid "Category Settings" +msgstr "" + +#: templates/InvenTree/settings/category.html:25 +msgid "Category Parameter Templates" +msgstr "" + +#: templates/InvenTree/settings/category.html:52 +msgid "No category parameter templates found" +msgstr "" + +#: templates/InvenTree/settings/category.html:67 +msgid "Default Value" +msgstr "" + +#: templates/InvenTree/settings/category.html:70 +#: templates/InvenTree/settings/part.html:75 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/category.html:71 +#: templates/InvenTree/settings/part.html:76 +msgid "Delete Template" +msgstr "" + #: templates/InvenTree/settings/global.html:10 msgid "Global InvenTree Settings" msgstr "" @@ -4372,22 +4492,14 @@ msgstr "" msgid "Part Options" msgstr "" -#: templates/InvenTree/settings/part.html:33 +#: templates/InvenTree/settings/part.html:34 msgid "Part Parameter Templates" msgstr "" -#: templates/InvenTree/settings/part.html:54 +#: templates/InvenTree/settings/part.html:55 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/part.html:74 -msgid "Edit Template" -msgstr "" - -#: templates/InvenTree/settings/part.html:75 -msgid "Delete Template" -msgstr "" - #: templates/InvenTree/settings/po.html:9 msgid "Purchase Order Settings" msgstr "" @@ -4434,6 +4546,10 @@ msgstr "" msgid "Global" msgstr "" +#: templates/InvenTree/settings/tabs.html:19 +msgid "Categories" +msgstr "" + #: templates/InvenTree/settings/theme.html:10 msgid "Theme Settings" msgstr "" @@ -4745,15 +4861,15 @@ msgstr "" msgid "No purchase orders found" msgstr "" -#: templates/js/order.js:180 templates/js/stock.js:677 +#: templates/js/order.js:181 templates/js/stock.js:677 msgid "Date" msgstr "" -#: templates/js/order.js:210 +#: templates/js/order.js:211 msgid "No sales orders found" msgstr "" -#: templates/js/order.js:267 +#: templates/js/order.js:268 msgid "Shipment Date" msgstr "" @@ -5163,38 +5279,38 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:131 +#: users/models.py:135 msgid "Permission set" msgstr "" -#: users/models.py:139 +#: users/models.py:143 msgid "Group" msgstr "" -#: users/models.py:142 +#: users/models.py:146 msgid "View" msgstr "" -#: users/models.py:142 +#: users/models.py:146 msgid "Permission to view items" msgstr "" -#: users/models.py:144 +#: users/models.py:148 msgid "Add" msgstr "" -#: users/models.py:144 +#: users/models.py:148 msgid "Permission to add items" msgstr "" -#: users/models.py:146 +#: users/models.py:150 msgid "Change" msgstr "" -#: users/models.py:146 +#: users/models.py:150 msgid "Permissions to edit items" msgstr "" -#: users/models.py:148 +#: users/models.py:152 msgid "Permission to delete items" msgstr ""