From a35c4a5a9535a1ad18fe793166e37f03f6146a47 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Thu, 5 Nov 2020 20:07:23 +1100 Subject: [PATCH] Rename tabs for build order --- InvenTree/build/templates/build/tabs.html | 21 +- InvenTree/locale/de/LC_MESSAGES/django.po | 360 +++++++++++++--------- InvenTree/locale/en/LC_MESSAGES/django.po | 342 +++++++++++--------- InvenTree/locale/es/LC_MESSAGES/django.po | 342 +++++++++++--------- 4 files changed, 603 insertions(+), 462 deletions(-) diff --git a/InvenTree/build/templates/build/tabs.html b/InvenTree/build/templates/build/tabs.html index 2c45cd2361..8bdb2a3013 100644 --- a/InvenTree/build/templates/build/tabs.html +++ b/InvenTree/build/templates/build/tabs.html @@ -4,16 +4,29 @@ {% trans "Details" %} + {% if build.active %} - {% trans "Allocate Parts" %} + + {% trans "Incomplete" %} + {{ build.incomplete_outputs.count }} + + {% endif %} - {% trans "Build Outputs" %}{% if build.output_count > 0%}{{ build.output_count }}{% endif %} + + {% trans "Build Outputs" %} + {{ build.output_count }} + - {% trans "Notes" %}{% if build.notes %} {% endif %} + + {% trans "Notes" %} + {% if build.notes %} {% endif %} +
  • - {% trans "Attachments" %} + + {% trans "Attachments" %} +
  • \ No newline at end of file diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 8a486733dc..07c948212b 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-03 10:02+0000\n" +"POT-Creation-Date: 2020-11-05 08:57+0000\n" "PO-Revision-Date: 2020-05-03 11:32+0200\n" "Last-Translator: Christian Schlüter \n" "Language-Team: C \n" @@ -447,7 +447,7 @@ msgstr "Bestellung, die diesem Bau zugwiesen ist" #: 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:293 -#: part/templates/part/part_app_base.html:7 +#: 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 #: templates/js/build.js:647 templates/js/company.js:138 @@ -540,10 +540,10 @@ msgstr "Externer Link" msgid "Link to external URL" msgstr "Link zu einer externen URL" -#: build/models.py:181 build/templates/build/tabs.html:14 company/models.py:314 +#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:314 #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 #: order/templates/order/purchase_order_detail.html:203 -#: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:70 +#: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 #: stock/forms.py:306 stock/forms.py:338 stock/forms.py:366 stock/models.py:455 #: stock/models.py:1428 stock/templates/stock/tabs.html:26 #: templates/js/barcode.js:391 templates/js/bom.js:250 @@ -555,76 +555,76 @@ msgstr "Notizen" msgid "Extra build notes" msgstr "Notizen für den Bau" -#: build/models.py:543 +#: build/models.py:551 #, fuzzy #| msgid "No action specified" msgid "No build output specified" msgstr "Keine Aktion angegeben" -#: build/models.py:546 +#: build/models.py:554 msgid "Build output is already completed" msgstr "" -#: build/models.py:549 +#: build/models.py:557 #, fuzzy #| msgid "Quantity does not match serial numbers" msgid "Build output does not match Build Order" msgstr "Anzahl stimmt nicht mit den Seriennummern überein" -#: build/models.py:620 +#: build/models.py:632 #, fuzzy #| msgid "Complete Build" msgid "Completed build output" msgstr "Bau fertigstellen" -#: build/models.py:858 +#: build/models.py:870 msgid "BuildItem must be unique for build, stock_item and install_into" msgstr "" -#: build/models.py:880 +#: build/models.py:892 #, fuzzy #| msgid "Allocate Stock to Build" msgid "Build item must specify a build output" msgstr "Lagerbestand dem Bau zuweisen" -#: build/models.py:885 +#: build/models.py:897 #, python-brace-format msgid "Selected stock item not found in BOM for part '{p}'" msgstr "Ausgewähltes Lagerobjekt nicht in BOM für Teil '{p}' gefunden" -#: build/models.py:889 +#: build/models.py:901 #, python-brace-format 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:896 order/models.py:603 +#: build/models.py:908 order/models.py:603 msgid "StockItem is over-allocated" msgstr "Zu viele Lagerobjekte zugewiesen" -#: build/models.py:900 order/models.py:606 +#: build/models.py:912 order/models.py:606 msgid "Allocation quantity must be greater than zero" msgstr "Anzahl muss größer null sein" -#: build/models.py:904 +#: build/models.py:916 msgid "Quantity must be 1 for serialized stock" msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein" -#: build/models.py:944 +#: build/models.py:956 msgid "Build to allocate parts" msgstr "Bau starten um Teile zuzuweisen" -#: build/models.py:951 +#: build/models.py:963 #, fuzzy #| msgid "Remove stock" msgid "Source stock item" msgstr "Bestand entfernen" -#: build/models.py:964 +#: build/models.py:976 msgid "Stock quantity to allocate to build" msgstr "Lagerobjekt-Anzahl dem Bau zuweisen" -#: build/models.py:972 +#: build/models.py:984 #, fuzzy #| msgid "Destination stock location" msgid "Destination stock item" @@ -642,59 +642,59 @@ msgstr "Bau fertigstellen" msgid "Build order has been completed" msgstr "Bau-Zuweisung ist vollständig" -#: build/templates/build/allocate.html:24 +#: build/templates/build/allocate.html:25 #, fuzzy #| msgid "Created new build" msgid "Create new build output" msgstr "Neuen Bau angelegt" -#: build/templates/build/allocate.html:25 +#: build/templates/build/allocate.html:26 #, fuzzy #| msgid "Create New Part" msgid "Create New Output" msgstr "Neues Teil anlegen" -#: build/templates/build/allocate.html:28 +#: build/templates/build/allocate.html:29 #, fuzzy #| msgid "Order part" msgid "Order required parts" msgstr "Teil bestellen" -#: build/templates/build/allocate.html:29 +#: build/templates/build/allocate.html:30 #: company/templates/company/detail_part.html:28 order/views.py:801 #: part/templates/part/category.html:125 msgid "Order Parts" msgstr "Teile bestellen" -#: build/templates/build/allocate.html:32 templates/js/build.js:574 +#: build/templates/build/allocate.html:33 templates/js/build.js:574 #, fuzzy #| msgid "Unallocate Stock" msgid "Unallocate stock" msgstr "Zuweisung aufheben" -#: build/templates/build/allocate.html:33 build/views.py:341 build/views.py:778 +#: build/templates/build/allocate.html:34 build/views.py:341 build/views.py:778 msgid "Unallocate Stock" msgstr "Zuweisung aufheben" -#: build/templates/build/allocate.html:46 +#: build/templates/build/allocate.html:48 #, fuzzy #| msgid "Created new build" msgid "Create a new build output" msgstr "Neuen Bau angelegt" -#: build/templates/build/allocate.html:47 +#: build/templates/build/allocate.html:49 #, fuzzy #| msgid "Complete Build" msgid "No incomplete build outputs remain." msgstr "Bau fertigstellen" -#: build/templates/build/allocate.html:48 +#: build/templates/build/allocate.html:50 msgid "Create a new build output using the button above" msgstr "" -#: build/templates/build/attachments.html:11 build/templates/build/tabs.html:17 +#: build/templates/build/attachments.html:11 build/templates/build/tabs.html:29 #: order/templates/order/po_tabs.html:11 order/templates/order/so_tabs.html:16 -#: part/templates/part/tabs.html:67 stock/templates/stock/tabs.html:32 +#: part/templates/part/tabs.html:70 stock/templates/stock/tabs.html:32 msgid "Attachments" msgstr "Anhänge" @@ -801,7 +801,7 @@ msgstr "" msgid "Sales Order" msgstr "Bestellung" -#: build/templates/build/build_output.html:9 build/templates/build/tabs.html:11 +#: build/templates/build/build_output.html:9 build/templates/build/tabs.html:17 msgid "Build Outputs" msgstr "Bau-Ausgabe" @@ -993,11 +993,11 @@ msgstr "Bermerkungen bearbeiten" msgid "Details" msgstr "Details" -#: build/templates/build/tabs.html:8 +#: build/templates/build/tabs.html:10 #, fuzzy -#| msgid "Allocated Parts" -msgid "Allocate Parts" -msgstr "Zugeordnete Teile" +#| msgid "Complete" +msgid "Incomplete" +msgstr "Fertig" #: build/templates/build/unallocate.html:10 msgid "Are you sure you wish to unallocate all stock for this build?" @@ -1036,7 +1036,7 @@ msgstr "Lagerbestand dem Bau zuweisen" msgid "Create Build Output" msgstr "Bau-Ausgabe" -#: build/views.py:207 stock/models.py:832 stock/views.py:1645 +#: build/views.py:207 stock/models.py:832 stock/views.py:1647 #, fuzzy #| msgid "Serial numbers already exist: " msgid "Serial numbers already exist" @@ -1175,7 +1175,7 @@ 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:96 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:164 #: stock/views.py:176 msgid "Added attachment" msgstr "Anhang hinzugefügt" @@ -1715,7 +1715,7 @@ msgid "Pricing Information" msgstr "Preisinformationen ansehen" #: company/templates/company/supplier_part_pricing.html:17 company/views.py:410 -#: part/templates/part/sale_prices.html:13 part/views.py:2292 +#: part/templates/part/sale_prices.html:13 part/views.py:2360 msgid "Add Price Break" msgstr "Preisstaffel hinzufügen" @@ -1848,17 +1848,17 @@ msgstr "Neues Zuliefererteil anlegen" msgid "Delete Supplier Part" msgstr "Zuliefererteil entfernen" -#: company/views.py:416 part/views.py:2298 +#: company/views.py:416 part/views.py:2366 #, fuzzy #| msgid "Add Price Break" msgid "Added new price break" msgstr "Preisstaffel hinzufügen" -#: company/views.py:453 part/views.py:2343 +#: company/views.py:453 part/views.py:2411 msgid "Edit Price Break" msgstr "Preisstaffel bearbeiten" -#: company/views.py:469 part/views.py:2359 +#: company/views.py:469 part/views.py:2427 msgid "Delete Price Break" msgstr "Preisstaffel löschen" @@ -1963,7 +1963,7 @@ msgstr "" msgid "Date order was completed" msgstr "Bestellung als vollständig markieren" -#: order/models.py:185 order/models.py:267 part/views.py:1409 +#: order/models.py:185 order/models.py:267 part/views.py:1477 #: stock/models.py:243 stock/models.py:816 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" @@ -2557,7 +2557,7 @@ msgstr "Neues Zulieferer-Teil" msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:93 part/models.py:1582 +#: part/forms.py:93 part/models.py:1608 msgid "Parent Part" msgstr "Ausgangsteil" @@ -2587,11 +2587,17 @@ msgstr "Bestätigen, dass die Stückliste korrekt ist" msgid "Select BOM file to upload" msgstr "Stücklisten-Datei zum Upload auswählen" -#: part/forms.py:159 +#: part/forms.py:154 +#, fuzzy +#| msgid "Delete Parts" +msgid "Related Part" +msgstr "Teile löschen" + +#: part/forms.py:173 msgid "Select part category" msgstr "Teilekategorie wählen" -#: part/forms.py:173 +#: part/forms.py:187 #, fuzzy #| msgid "Perform 'deep copy' which will duplicate all BOM data for this part" msgid "Duplicate all BOM data for this part" @@ -2599,29 +2605,29 @@ msgstr "" "Tiefe Kopie ausführen. Dies wird alle Daten der Stückliste für dieses Teil " "duplizieren" -#: part/forms.py:174 +#: part/forms.py:188 msgid "Copy BOM" msgstr "" -#: part/forms.py:179 +#: part/forms.py:193 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:180 +#: part/forms.py:194 #, fuzzy #| msgid "Parameters" msgid "Copy Parameters" msgstr "Parameter" -#: part/forms.py:185 +#: part/forms.py:199 msgid "Confirm part creation" msgstr "Erstellen des Teils bestätigen" -#: part/forms.py:279 +#: part/forms.py:293 msgid "Input quantity for price calculation" msgstr "Eintragsmenge zur Preisberechnung" -#: part/forms.py:282 +#: part/forms.py:296 msgid "Select currency for price calculation" msgstr "Währung zur Preisberechnung wählen" @@ -2751,13 +2757,13 @@ msgstr "Bemerkungen - unterstüzt Markdown-Formatierung" msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" -#: part/models.py:1455 +#: part/models.py:1481 #, 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:1472 +#: part/models.py:1498 #, fuzzy #| msgid "" #| "A stock item with this serial number already exists for template part " @@ -2767,126 +2773,138 @@ msgstr "" "Ein Teil mit dieser Seriennummer existiert bereits für die Teilevorlage " "{part}" -#: part/models.py:1491 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1517 templates/js/part.js:567 templates/js/stock.js:92 #, fuzzy #| msgid "Instance Name" msgid "Test Name" msgstr "Instanzname" -#: part/models.py:1492 +#: part/models.py:1518 #, fuzzy #| msgid "Serial number for this item" msgid "Enter a name for the test" msgstr "Seriennummer für dieses Teil" -#: part/models.py:1497 +#: part/models.py:1523 #, fuzzy #| msgid "Description" msgid "Test Description" msgstr "Beschreibung" -#: part/models.py:1498 +#: part/models.py:1524 #, fuzzy #| msgid "Brief description of the build" msgid "Enter description for this test" msgstr "Kurze Beschreibung des Baus" -#: part/models.py:1503 templates/js/part.js:576 +#: part/models.py:1529 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "benötigt" -#: part/models.py:1504 +#: part/models.py:1530 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1509 templates/js/part.js:584 +#: part/models.py:1535 templates/js/part.js:584 #, fuzzy #| msgid "Required Parts" msgid "Requires Value" msgstr "benötigte Teile" -#: part/models.py:1510 +#: part/models.py:1536 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1515 templates/js/part.js:591 +#: part/models.py:1541 templates/js/part.js:591 #, fuzzy #| msgid "Delete Attachment" msgid "Requires Attachment" msgstr "Anhang löschen" -#: part/models.py:1516 +#: part/models.py:1542 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1549 +#: part/models.py:1575 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:1554 +#: part/models.py:1580 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:1556 +#: part/models.py:1582 msgid "Parameter Units" msgstr "Parameter Einheit" -#: part/models.py:1584 +#: part/models.py:1610 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:1586 +#: part/models.py:1612 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:1623 +#: part/models.py:1649 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:1631 +#: part/models.py:1657 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:1637 +#: part/models.py:1663 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:1639 +#: part/models.py:1665 #, fuzzy #| msgid "Confim BOM item deletion" msgid "This BOM item is optional" msgstr "Löschung von BOM-Position bestätigen" -#: part/models.py:1642 +#: part/models.py:1668 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:1645 +#: part/models.py:1671 msgid "BOM item reference" msgstr "Referenz des Objekts auf der Stückliste" -#: part/models.py:1648 +#: part/models.py:1674 msgid "BOM item notes" msgstr "Notizen zum Stücklisten-Objekt" -#: part/models.py:1650 +#: part/models.py:1676 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:1717 part/views.py:1415 part/views.py:1467 +#: part/models.py:1743 part/views.py:1483 part/views.py:1535 #: stock/models.py:233 #, 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:1733 +#: part/models.py:1759 #, fuzzy #| msgid "New BOM Item" msgid "BOM Item" msgstr "Neue Stücklistenposition" +#: part/models.py:1874 +#, fuzzy +#| msgid "Select a part" +msgid "Select Related Part" +msgstr "Teil auswählen" + +#: part/models.py:1906 +msgid "" +"Error creating relationship: check that the part is not related to itself " +"and that the relationship is unique" +msgstr "" + #: part/templates/part/allocation.html:10 msgid "Part Stock Allocations" msgstr "Teilbestandszuordnungen" @@ -2977,7 +2995,7 @@ msgstr "Stückliste validieren" msgid "Validate" msgstr "BOM validieren" -#: part/templates/part/bom.html:62 part/views.py:1706 +#: part/templates/part/bom.html:62 part/views.py:1774 msgid "Export Bill of Materials" msgstr "Stückliste exportieren" @@ -3099,7 +3117,7 @@ msgstr "Neuen Bau beginnen" msgid "All parts" msgstr "Alle Teile" -#: part/templates/part/category.html:24 part/views.py:2109 +#: part/templates/part/category.html:24 part/views.py:2177 msgid "Create new part category" msgstr "Teilkategorie anlegen" @@ -3398,8 +3416,8 @@ msgstr "Neuer Parameter" msgid "Value" msgstr "Wert" -#: part/templates/part/params.html:41 part/templates/part/supplier.html:19 -#: users/models.py:146 +#: part/templates/part/params.html:41 part/templates/part/related.html:41 +#: part/templates/part/supplier.html:19 users/models.py:147 msgid "Delete" msgstr "Löschen" @@ -3526,6 +3544,18 @@ msgstr "Aus vorhandenen Bildern auswählen" msgid "Upload new image" msgstr "Neues Bild hochladen" +#: part/templates/part/related.html:9 +#, fuzzy +#| msgid "Delete Parts" +msgid "Related Parts" +msgstr "Teile löschen" + +#: part/templates/part/related.html:15 +#, fuzzy +#| msgid "Edit Template" +msgid "Add Related" +msgstr "Vorlage bearbeiten" + #: part/templates/part/sale_prices.html:9 part/templates/part/tabs.html:53 #, fuzzy #| msgid "Price" @@ -3605,6 +3635,12 @@ msgstr "Benutzt in" msgid "Tests" msgstr "" +#: part/templates/part/tabs.html:67 +#, fuzzy +#| msgid "Created" +msgid "Related" +msgstr "Erstellt" + #: part/templates/part/track.html:8 msgid "Part Tracking" msgstr "Teilverfolgung" @@ -3632,217 +3668,229 @@ msgid "New Variant" msgstr "Varianten" #: part/views.py:80 +#, fuzzy +#| msgid "Allocated Parts" +msgid "Add Related Part" +msgstr "Zugeordnete Teile" + +#: part/views.py:136 +#, fuzzy +#| msgid "Delete Supplier Part" +msgid "Delete Related Part" +msgstr "Zuliefererteil entfernen" + +#: part/views.py:148 msgid "Add part attachment" msgstr "Teilanhang hinzufügen" -#: part/views.py:135 templates/attachment_table.html:34 +#: part/views.py:203 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "Anhang bearbeiten" -#: part/views.py:141 +#: part/views.py:209 msgid "Part attachment updated" msgstr "Teilanhang aktualisiert" -#: part/views.py:156 +#: part/views.py:224 msgid "Delete Part Attachment" msgstr "Teilanhang löschen" -#: part/views.py:164 +#: part/views.py:232 msgid "Deleted part attachment" msgstr "Teilanhang gelöscht" -#: part/views.py:173 +#: part/views.py:241 #, fuzzy #| msgid "Create Part Parameter Template" msgid "Create Test Template" msgstr "Teilparametervorlage anlegen" -#: part/views.py:202 +#: part/views.py:270 #, fuzzy #| msgid "Edit Template" msgid "Edit Test Template" msgstr "Vorlage bearbeiten" -#: part/views.py:218 +#: part/views.py:286 #, fuzzy #| msgid "Delete Template" msgid "Delete Test Template" msgstr "Vorlage löschen" -#: part/views.py:227 +#: part/views.py:295 msgid "Set Part Category" msgstr "Teilkategorie auswählen" -#: part/views.py:277 +#: part/views.py:345 #, python-brace-format msgid "Set category for {n} parts" msgstr "Kategorie für {n} Teile setzen" -#: part/views.py:312 +#: part/views.py:380 msgid "Create Variant" msgstr "Variante anlegen" -#: part/views.py:394 +#: part/views.py:462 msgid "Duplicate Part" msgstr "Teil duplizieren" -#: part/views.py:401 +#: part/views.py:469 msgid "Copied part" msgstr "Teil kopiert" -#: part/views.py:455 part/views.py:585 +#: part/views.py:523 part/views.py:653 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:520 templates/js/stock.js:840 +#: part/views.py:588 templates/js/stock.js:840 msgid "Create New Part" msgstr "Neues Teil anlegen" -#: part/views.py:527 +#: part/views.py:595 msgid "Created new part" msgstr "Neues Teil angelegt" -#: part/views.py:743 +#: part/views.py:811 msgid "Part QR Code" msgstr "Teil-QR-Code" -#: part/views.py:762 +#: part/views.py:830 msgid "Upload Part Image" msgstr "Teilbild hochladen" -#: part/views.py:770 part/views.py:807 +#: part/views.py:838 part/views.py:875 msgid "Updated part image" msgstr "Teilbild aktualisiert" -#: part/views.py:779 +#: part/views.py:847 msgid "Select Part Image" msgstr "Teilbild auswählen" -#: part/views.py:810 +#: part/views.py:878 msgid "Part image not found" msgstr "Teilbild nicht gefunden" -#: part/views.py:821 +#: part/views.py:889 msgid "Edit Part Properties" msgstr "Teileigenschaften bearbeiten" -#: part/views.py:848 +#: part/views.py:916 #, fuzzy #| msgid "Duplicate Part" msgid "Duplicate BOM" msgstr "Teil duplizieren" -#: part/views.py:879 +#: part/views.py:947 #, fuzzy #| msgid "Confirm unallocation of build stock" msgid "Confirm duplication of BOM from parent" msgstr "Zuweisungsaufhebung bestätigen" -#: part/views.py:900 +#: part/views.py:968 msgid "Validate BOM" msgstr "BOM validieren" -#: part/views.py:923 +#: part/views.py:991 #, 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:934 +#: part/views.py:1002 #, fuzzy #| msgid "Validate Bill of Materials" msgid "Validated Bill of Materials" msgstr "Stückliste validieren" -#: part/views.py:1068 +#: part/views.py:1136 msgid "No BOM file provided" msgstr "Keine Stückliste angegeben" -#: part/views.py:1418 +#: part/views.py:1486 msgid "Enter a valid quantity" msgstr "Bitte eine gültige Anzahl eingeben" -#: part/views.py:1443 part/views.py:1446 +#: part/views.py:1511 part/views.py:1514 msgid "Select valid part" msgstr "Bitte ein gültiges Teil auswählen" -#: part/views.py:1452 +#: part/views.py:1520 msgid "Duplicate part selected" msgstr "Teil doppelt ausgewählt" -#: part/views.py:1490 +#: part/views.py:1558 msgid "Select a part" msgstr "Teil auswählen" -#: part/views.py:1496 +#: part/views.py:1564 #, 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:1500 +#: part/views.py:1568 msgid "Specify quantity" msgstr "Anzahl angeben" -#: part/views.py:1756 +#: part/views.py:1824 msgid "Confirm Part Deletion" msgstr "Löschen des Teils bestätigen" -#: part/views.py:1765 +#: part/views.py:1833 msgid "Part was deleted" msgstr "Teil wurde gelöscht" -#: part/views.py:1774 +#: part/views.py:1842 msgid "Part Pricing" msgstr "Teilbepreisung" -#: part/views.py:1900 +#: part/views.py:1968 msgid "Create Part Parameter Template" msgstr "Teilparametervorlage anlegen" -#: part/views.py:1910 +#: part/views.py:1978 msgid "Edit Part Parameter Template" msgstr "Teilparametervorlage bearbeiten" -#: part/views.py:1919 +#: part/views.py:1987 msgid "Delete Part Parameter Template" msgstr "Teilparametervorlage löschen" -#: part/views.py:1929 +#: part/views.py:1997 msgid "Create Part Parameter" msgstr "Teilparameter anlegen" -#: part/views.py:1981 +#: part/views.py:2049 msgid "Edit Part Parameter" msgstr "Teilparameter bearbeiten" -#: part/views.py:1997 +#: part/views.py:2065 msgid "Delete Part Parameter" msgstr "Teilparameter löschen" -#: part/views.py:2056 +#: part/views.py:2124 msgid "Edit Part Category" msgstr "Teilkategorie bearbeiten" -#: part/views.py:2093 +#: part/views.py:2161 msgid "Delete Part Category" msgstr "Teilkategorie löschen" -#: part/views.py:2101 +#: part/views.py:2169 msgid "Part category was deleted" msgstr "Teilekategorie wurde gelöscht" -#: part/views.py:2164 +#: part/views.py:2232 #, fuzzy #| msgid "Create BOM item" msgid "Create BOM Item" msgstr "BOM-Position anlegen" -#: part/views.py:2232 +#: part/views.py:2300 msgid "Edit BOM item" msgstr "BOM-Position beaarbeiten" -#: part/views.py:2282 +#: part/views.py:2350 msgid "Confim BOM item deletion" msgstr "Löschung von BOM-Position bestätigen" @@ -4806,52 +4854,52 @@ msgstr "Lagerbestand erfassen" msgid "Create new Stock Item" msgstr "Neues Lagerobjekt hinzufügen" -#: stock/views.py:1553 +#: stock/views.py:1555 #, fuzzy #| msgid "Count stock items" msgid "Duplicate Stock Item" msgstr "Lagerobjekte zählen" -#: stock/views.py:1619 +#: stock/views.py:1621 msgid "Invalid quantity" msgstr "Ungültige Menge" -#: stock/views.py:1622 +#: stock/views.py:1624 #, 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:1626 +#: stock/views.py:1628 msgid "Invalid part selection" msgstr "Ungültige Teileauswahl" -#: stock/views.py:1674 +#: stock/views.py:1676 #, python-brace-format msgid "Created {n} new stock items" msgstr "{n} neue Lagerobjekte erstellt" -#: stock/views.py:1693 stock/views.py:1709 +#: stock/views.py:1695 stock/views.py:1711 msgid "Created new stock item" msgstr "Neues Lagerobjekt erstellt" -#: stock/views.py:1728 +#: stock/views.py:1730 msgid "Delete Stock Location" msgstr "Standort löschen" -#: stock/views.py:1742 +#: stock/views.py:1744 msgid "Delete Stock Item" msgstr "Lagerobjekt löschen" -#: stock/views.py:1754 +#: stock/views.py:1756 msgid "Delete Stock Tracking Entry" msgstr "Lagerbestands-Tracking-Eintrag löschen" -#: stock/views.py:1773 +#: stock/views.py:1775 msgid "Edit Stock Tracking Entry" msgstr "Lagerbestands-Tracking-Eintrag bearbeiten" -#: stock/views.py:1783 +#: stock/views.py:1785 msgid "Add Stock Tracking Entry" msgstr "Lagerbestands-Tracking-Eintrag hinzufügen" @@ -5920,69 +5968,73 @@ msgstr "Position löschen" msgid "Delete Stock" msgstr "Bestand löschen" -#: users/admin.py:61 +#: users/admin.py:62 #, fuzzy #| msgid "User" msgid "Users" msgstr "Benutzer" -#: users/admin.py:62 +#: users/admin.py:63 msgid "Select which users are assigned to this group" msgstr "" #: users/admin.py:120 +msgid "The following users are members of multiple groups:" +msgstr "" + +#: users/admin.py:143 #, fuzzy #| msgid "External Link" msgid "Personal info" msgstr "Externer Link" -#: users/admin.py:121 +#: users/admin.py:144 #, fuzzy #| msgid "Revision" msgid "Permissions" msgstr "Revision" -#: users/admin.py:124 +#: users/admin.py:147 #, fuzzy #| msgid "Import BOM data" msgid "Important dates" msgstr "Stückliste importieren" -#: users/models.py:129 +#: users/models.py:130 msgid "Permission set" msgstr "" -#: users/models.py:137 +#: users/models.py:138 msgid "Group" msgstr "" -#: users/models.py:140 +#: users/models.py:141 msgid "View" msgstr "" -#: users/models.py:140 +#: users/models.py:141 msgid "Permission to view items" msgstr "" -#: users/models.py:142 +#: users/models.py:143 #, fuzzy #| msgid "Address" msgid "Add" msgstr "Adresse" -#: users/models.py:142 +#: users/models.py:143 msgid "Permission to add items" msgstr "" -#: users/models.py:144 +#: users/models.py:145 msgid "Change" msgstr "" -#: users/models.py:144 +#: users/models.py:145 msgid "Permissions to edit items" msgstr "" -#: users/models.py:146 +#: users/models.py:147 #, fuzzy #| msgid "Remove selected BOM items" msgid "Permission to delete items" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index aacb4b74ec..13e4832bc5 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-03 10:02+0000\n" +"POT-Creation-Date: 2020-11-05 08:57+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -397,7 +397,7 @@ msgstr "" #: 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:293 -#: part/templates/part/part_app_base.html:7 +#: 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 #: templates/js/build.js:647 templates/js/company.js:138 @@ -480,10 +480,10 @@ msgstr "" msgid "Link to external URL" msgstr "" -#: build/models.py:181 build/templates/build/tabs.html:14 company/models.py:314 +#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:314 #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 #: order/templates/order/purchase_order_detail.html:203 -#: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:70 +#: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 #: stock/forms.py:306 stock/forms.py:338 stock/forms.py:366 stock/models.py:455 #: stock/models.py:1428 stock/templates/stock/tabs.html:26 #: templates/js/barcode.js:391 templates/js/bom.js:250 @@ -495,65 +495,65 @@ msgstr "" msgid "Extra build notes" msgstr "" -#: build/models.py:543 +#: build/models.py:551 msgid "No build output specified" msgstr "" -#: build/models.py:546 +#: build/models.py:554 msgid "Build output is already completed" msgstr "" -#: build/models.py:549 +#: build/models.py:557 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:620 +#: build/models.py:632 msgid "Completed build output" msgstr "" -#: build/models.py:858 +#: build/models.py:870 msgid "BuildItem must be unique for build, stock_item and install_into" msgstr "" -#: build/models.py:880 +#: build/models.py:892 msgid "Build item must specify a build output" msgstr "" -#: build/models.py:885 +#: build/models.py:897 #, python-brace-format msgid "Selected stock item not found in BOM for part '{p}'" msgstr "" -#: build/models.py:889 +#: build/models.py:901 #, python-brace-format msgid "Allocated quantity ({n}) must not exceed available quantity ({q})" msgstr "" -#: build/models.py:896 order/models.py:603 +#: build/models.py:908 order/models.py:603 msgid "StockItem is over-allocated" msgstr "" -#: build/models.py:900 order/models.py:606 +#: build/models.py:912 order/models.py:606 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:904 +#: build/models.py:916 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:944 +#: build/models.py:956 msgid "Build to allocate parts" msgstr "" -#: build/models.py:951 +#: build/models.py:963 msgid "Source stock item" msgstr "" -#: build/models.py:964 +#: build/models.py:976 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:972 +#: build/models.py:984 msgid "Destination stock item" msgstr "" @@ -565,47 +565,47 @@ msgstr "" msgid "Build order has been completed" msgstr "" -#: build/templates/build/allocate.html:24 +#: build/templates/build/allocate.html:25 msgid "Create new build output" msgstr "" -#: build/templates/build/allocate.html:25 +#: build/templates/build/allocate.html:26 msgid "Create New Output" msgstr "" -#: build/templates/build/allocate.html:28 +#: build/templates/build/allocate.html:29 msgid "Order required parts" msgstr "" -#: build/templates/build/allocate.html:29 +#: build/templates/build/allocate.html:30 #: company/templates/company/detail_part.html:28 order/views.py:801 #: part/templates/part/category.html:125 msgid "Order Parts" msgstr "" -#: build/templates/build/allocate.html:32 templates/js/build.js:574 +#: build/templates/build/allocate.html:33 templates/js/build.js:574 msgid "Unallocate stock" msgstr "" -#: build/templates/build/allocate.html:33 build/views.py:341 build/views.py:778 +#: build/templates/build/allocate.html:34 build/views.py:341 build/views.py:778 msgid "Unallocate Stock" msgstr "" -#: build/templates/build/allocate.html:46 +#: build/templates/build/allocate.html:48 msgid "Create a new build output" msgstr "" -#: build/templates/build/allocate.html:47 +#: build/templates/build/allocate.html:49 msgid "No incomplete build outputs remain." msgstr "" -#: build/templates/build/allocate.html:48 +#: build/templates/build/allocate.html:50 msgid "Create a new build output using the button above" msgstr "" -#: build/templates/build/attachments.html:11 build/templates/build/tabs.html:17 +#: build/templates/build/attachments.html:11 build/templates/build/tabs.html:29 #: order/templates/order/po_tabs.html:11 order/templates/order/so_tabs.html:16 -#: part/templates/part/tabs.html:67 stock/templates/stock/tabs.html:32 +#: part/templates/part/tabs.html:70 stock/templates/stock/tabs.html:32 msgid "Attachments" msgstr "" @@ -698,7 +698,7 @@ msgstr "" msgid "Sales Order" msgstr "" -#: build/templates/build/build_output.html:9 build/templates/build/tabs.html:11 +#: build/templates/build/build_output.html:9 build/templates/build/tabs.html:17 msgid "Build Outputs" msgstr "" @@ -855,8 +855,8 @@ msgstr "" msgid "Details" msgstr "" -#: build/templates/build/tabs.html:8 -msgid "Allocate Parts" +#: build/templates/build/tabs.html:10 +msgid "Incomplete" msgstr "" #: build/templates/build/unallocate.html:10 @@ -887,7 +887,7 @@ msgstr "" msgid "Create Build Output" msgstr "" -#: build/views.py:207 stock/models.py:832 stock/views.py:1645 +#: build/views.py:207 stock/models.py:832 stock/views.py:1647 msgid "Serial numbers already exist" msgstr "" @@ -992,7 +992,7 @@ msgstr "" msgid "Add Build Order Attachment" msgstr "" -#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:96 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:164 #: stock/views.py:176 msgid "Added attachment" msgstr "" @@ -1487,7 +1487,7 @@ msgid "Pricing Information" msgstr "" #: company/templates/company/supplier_part_pricing.html:17 company/views.py:410 -#: part/templates/part/sale_prices.html:13 part/views.py:2292 +#: part/templates/part/sale_prices.html:13 part/views.py:2360 msgid "Add Price Break" msgstr "" @@ -1614,15 +1614,15 @@ msgstr "" msgid "Delete Supplier Part" msgstr "" -#: company/views.py:416 part/views.py:2298 +#: company/views.py:416 part/views.py:2366 msgid "Added new price break" msgstr "" -#: company/views.py:453 part/views.py:2343 +#: company/views.py:453 part/views.py:2411 msgid "Edit Price Break" msgstr "" -#: company/views.py:469 part/views.py:2359 +#: company/views.py:469 part/views.py:2427 msgid "Delete Price Break" msgstr "" @@ -1715,7 +1715,7 @@ msgstr "" msgid "Date order was completed" msgstr "" -#: order/models.py:185 order/models.py:267 part/views.py:1409 +#: order/models.py:185 order/models.py:267 part/views.py:1477 #: stock/models.py:243 stock/models.py:816 msgid "Quantity must be greater than zero" msgstr "" @@ -2278,7 +2278,7 @@ msgstr "" msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:93 part/models.py:1582 +#: part/forms.py:93 part/models.py:1608 msgid "Parent Part" msgstr "" @@ -2302,35 +2302,39 @@ msgstr "" msgid "Select BOM file to upload" msgstr "" -#: part/forms.py:159 -msgid "Select part category" +#: part/forms.py:154 +msgid "Related Part" msgstr "" #: part/forms.py:173 +msgid "Select part category" +msgstr "" + +#: part/forms.py:187 msgid "Duplicate all BOM data for this part" msgstr "" -#: part/forms.py:174 +#: part/forms.py:188 msgid "Copy BOM" msgstr "" -#: part/forms.py:179 +#: part/forms.py:193 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:180 +#: part/forms.py:194 msgid "Copy Parameters" msgstr "" -#: part/forms.py:185 +#: part/forms.py:199 msgid "Confirm part creation" msgstr "" -#: part/forms.py:279 +#: part/forms.py:293 msgid "Input quantity for price calculation" msgstr "" -#: part/forms.py:282 +#: part/forms.py:296 msgid "Select currency for price calculation" msgstr "" @@ -2456,116 +2460,126 @@ msgstr "" msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1455 +#: part/models.py:1481 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:1472 +#: part/models.py:1498 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:1491 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1517 templates/js/part.js:567 templates/js/stock.js:92 msgid "Test Name" msgstr "" -#: part/models.py:1492 +#: part/models.py:1518 msgid "Enter a name for the test" msgstr "" -#: part/models.py:1497 +#: part/models.py:1523 msgid "Test Description" msgstr "" -#: part/models.py:1498 +#: part/models.py:1524 msgid "Enter description for this test" msgstr "" -#: part/models.py:1503 templates/js/part.js:576 +#: part/models.py:1529 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "" -#: part/models.py:1504 +#: part/models.py:1530 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1509 templates/js/part.js:584 +#: part/models.py:1535 templates/js/part.js:584 msgid "Requires Value" msgstr "" -#: part/models.py:1510 +#: part/models.py:1536 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1515 templates/js/part.js:591 +#: part/models.py:1541 templates/js/part.js:591 msgid "Requires Attachment" msgstr "" -#: part/models.py:1516 +#: part/models.py:1542 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1549 +#: part/models.py:1575 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:1554 +#: part/models.py:1580 msgid "Parameter Name" msgstr "" -#: part/models.py:1556 +#: part/models.py:1582 msgid "Parameter Units" msgstr "" -#: part/models.py:1584 +#: part/models.py:1610 msgid "Parameter Template" msgstr "" -#: part/models.py:1586 +#: part/models.py:1612 msgid "Parameter Value" msgstr "" -#: part/models.py:1623 +#: part/models.py:1649 msgid "Select parent part" msgstr "" -#: part/models.py:1631 +#: part/models.py:1657 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:1637 +#: part/models.py:1663 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:1639 +#: part/models.py:1665 msgid "This BOM item is optional" msgstr "" -#: part/models.py:1642 +#: part/models.py:1668 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:1645 +#: part/models.py:1671 msgid "BOM item reference" msgstr "" -#: part/models.py:1648 +#: part/models.py:1674 msgid "BOM item notes" msgstr "" -#: part/models.py:1650 +#: part/models.py:1676 msgid "BOM line checksum" msgstr "" -#: part/models.py:1717 part/views.py:1415 part/views.py:1467 +#: part/models.py:1743 part/views.py:1483 part/views.py:1535 #: stock/models.py:233 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:1733 +#: part/models.py:1759 msgid "BOM Item" msgstr "" +#: part/models.py:1874 +msgid "Select Related Part" +msgstr "" + +#: part/models.py:1906 +msgid "" +"Error creating relationship: check that the part is not related to itself " +"and that the relationship is unique" +msgstr "" + #: part/templates/part/allocation.html:10 msgid "Part Stock Allocations" msgstr "" @@ -2648,7 +2662,7 @@ msgstr "" msgid "Validate" msgstr "" -#: part/templates/part/bom.html:62 part/views.py:1706 +#: part/templates/part/bom.html:62 part/views.py:1774 msgid "Export Bill of Materials" msgstr "" @@ -2744,7 +2758,7 @@ msgstr "" msgid "All parts" msgstr "" -#: part/templates/part/category.html:24 part/views.py:2109 +#: part/templates/part/category.html:24 part/views.py:2177 msgid "Create new part category" msgstr "" @@ -3007,8 +3021,8 @@ msgstr "" msgid "Value" msgstr "" -#: part/templates/part/params.html:41 part/templates/part/supplier.html:19 -#: users/models.py:146 +#: part/templates/part/params.html:41 part/templates/part/related.html:41 +#: part/templates/part/supplier.html:19 users/models.py:147 msgid "Delete" msgstr "" @@ -3115,6 +3129,14 @@ msgstr "" msgid "Upload new image" msgstr "" +#: part/templates/part/related.html:9 +msgid "Related Parts" +msgstr "" + +#: part/templates/part/related.html:15 +msgid "Add Related" +msgstr "" + #: part/templates/part/sale_prices.html:9 part/templates/part/tabs.html:53 msgid "Sale Price" msgstr "" @@ -3184,6 +3206,10 @@ msgstr "" msgid "Tests" msgstr "" +#: part/templates/part/tabs.html:67 +msgid "Related" +msgstr "" + #: part/templates/part/track.html:8 msgid "Part Tracking" msgstr "" @@ -3205,199 +3231,207 @@ msgid "New Variant" msgstr "" #: part/views.py:80 +msgid "Add Related Part" +msgstr "" + +#: part/views.py:136 +msgid "Delete Related Part" +msgstr "" + +#: part/views.py:148 msgid "Add part attachment" msgstr "" -#: part/views.py:135 templates/attachment_table.html:34 +#: part/views.py:203 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "" -#: part/views.py:141 +#: part/views.py:209 msgid "Part attachment updated" msgstr "" -#: part/views.py:156 +#: part/views.py:224 msgid "Delete Part Attachment" msgstr "" -#: part/views.py:164 +#: part/views.py:232 msgid "Deleted part attachment" msgstr "" -#: part/views.py:173 +#: part/views.py:241 msgid "Create Test Template" msgstr "" -#: part/views.py:202 +#: part/views.py:270 msgid "Edit Test Template" msgstr "" -#: part/views.py:218 +#: part/views.py:286 msgid "Delete Test Template" msgstr "" -#: part/views.py:227 +#: part/views.py:295 msgid "Set Part Category" msgstr "" -#: part/views.py:277 +#: part/views.py:345 #, python-brace-format msgid "Set category for {n} parts" msgstr "" -#: part/views.py:312 +#: part/views.py:380 msgid "Create Variant" msgstr "" -#: part/views.py:394 +#: part/views.py:462 msgid "Duplicate Part" msgstr "" -#: part/views.py:401 +#: part/views.py:469 msgid "Copied part" msgstr "" -#: part/views.py:455 part/views.py:585 +#: part/views.py:523 part/views.py:653 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:520 templates/js/stock.js:840 +#: part/views.py:588 templates/js/stock.js:840 msgid "Create New Part" msgstr "" -#: part/views.py:527 +#: part/views.py:595 msgid "Created new part" msgstr "" -#: part/views.py:743 +#: part/views.py:811 msgid "Part QR Code" msgstr "" -#: part/views.py:762 +#: part/views.py:830 msgid "Upload Part Image" msgstr "" -#: part/views.py:770 part/views.py:807 +#: part/views.py:838 part/views.py:875 msgid "Updated part image" msgstr "" -#: part/views.py:779 +#: part/views.py:847 msgid "Select Part Image" msgstr "" -#: part/views.py:810 +#: part/views.py:878 msgid "Part image not found" msgstr "" -#: part/views.py:821 +#: part/views.py:889 msgid "Edit Part Properties" msgstr "" -#: part/views.py:848 +#: part/views.py:916 msgid "Duplicate BOM" msgstr "" -#: part/views.py:879 +#: part/views.py:947 msgid "Confirm duplication of BOM from parent" msgstr "" -#: part/views.py:900 +#: part/views.py:968 msgid "Validate BOM" msgstr "" -#: part/views.py:923 +#: part/views.py:991 msgid "Confirm that the BOM is valid" msgstr "" -#: part/views.py:934 +#: part/views.py:1002 msgid "Validated Bill of Materials" msgstr "" -#: part/views.py:1068 +#: part/views.py:1136 msgid "No BOM file provided" msgstr "" -#: part/views.py:1418 +#: part/views.py:1486 msgid "Enter a valid quantity" msgstr "" -#: part/views.py:1443 part/views.py:1446 +#: part/views.py:1511 part/views.py:1514 msgid "Select valid part" msgstr "" -#: part/views.py:1452 +#: part/views.py:1520 msgid "Duplicate part selected" msgstr "" -#: part/views.py:1490 +#: part/views.py:1558 msgid "Select a part" msgstr "" -#: part/views.py:1496 +#: part/views.py:1564 msgid "Selected part creates a circular BOM" msgstr "" -#: part/views.py:1500 +#: part/views.py:1568 msgid "Specify quantity" msgstr "" -#: part/views.py:1756 +#: part/views.py:1824 msgid "Confirm Part Deletion" msgstr "" -#: part/views.py:1765 +#: part/views.py:1833 msgid "Part was deleted" msgstr "" -#: part/views.py:1774 +#: part/views.py:1842 msgid "Part Pricing" msgstr "" -#: part/views.py:1900 +#: part/views.py:1968 msgid "Create Part Parameter Template" msgstr "" -#: part/views.py:1910 +#: part/views.py:1978 msgid "Edit Part Parameter Template" msgstr "" -#: part/views.py:1919 +#: part/views.py:1987 msgid "Delete Part Parameter Template" msgstr "" -#: part/views.py:1929 +#: part/views.py:1997 msgid "Create Part Parameter" msgstr "" -#: part/views.py:1981 +#: part/views.py:2049 msgid "Edit Part Parameter" msgstr "" -#: part/views.py:1997 +#: part/views.py:2065 msgid "Delete Part Parameter" msgstr "" -#: part/views.py:2056 +#: part/views.py:2124 msgid "Edit Part Category" msgstr "" -#: part/views.py:2093 +#: part/views.py:2161 msgid "Delete Part Category" msgstr "" -#: part/views.py:2101 +#: part/views.py:2169 msgid "Part category was deleted" msgstr "" -#: part/views.py:2164 +#: part/views.py:2232 msgid "Create BOM Item" msgstr "" -#: part/views.py:2232 +#: part/views.py:2300 msgid "Edit BOM item" msgstr "" -#: part/views.py:2282 +#: part/views.py:2350 msgid "Confim BOM item deletion" msgstr "" @@ -4198,48 +4232,48 @@ msgstr "" msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1553 +#: stock/views.py:1555 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1619 +#: stock/views.py:1621 msgid "Invalid quantity" msgstr "" -#: stock/views.py:1622 +#: stock/views.py:1624 msgid "Quantity cannot be less than zero" msgstr "" -#: stock/views.py:1626 +#: stock/views.py:1628 msgid "Invalid part selection" msgstr "" -#: stock/views.py:1674 +#: stock/views.py:1676 #, python-brace-format msgid "Created {n} new stock items" msgstr "" -#: stock/views.py:1693 stock/views.py:1709 +#: stock/views.py:1695 stock/views.py:1711 msgid "Created new stock item" msgstr "" -#: stock/views.py:1728 +#: stock/views.py:1730 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1742 +#: stock/views.py:1744 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1754 +#: stock/views.py:1756 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1773 +#: stock/views.py:1775 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1783 +#: stock/views.py:1785 msgid "Add Stock Tracking Entry" msgstr "" @@ -5102,58 +5136,62 @@ msgstr "" msgid "Delete Stock" msgstr "" -#: users/admin.py:61 +#: users/admin.py:62 msgid "Users" msgstr "" -#: users/admin.py:62 +#: users/admin.py:63 msgid "Select which users are assigned to this group" msgstr "" #: users/admin.py:120 +msgid "The following users are members of multiple groups:" +msgstr "" + +#: users/admin.py:143 msgid "Personal info" msgstr "" -#: users/admin.py:121 +#: users/admin.py:144 msgid "Permissions" msgstr "" -#: users/admin.py:124 +#: users/admin.py:147 msgid "Important dates" msgstr "" -#: users/models.py:129 +#: users/models.py:130 msgid "Permission set" msgstr "" -#: users/models.py:137 +#: users/models.py:138 msgid "Group" msgstr "" -#: users/models.py:140 +#: users/models.py:141 msgid "View" msgstr "" -#: users/models.py:140 +#: users/models.py:141 msgid "Permission to view items" msgstr "" -#: users/models.py:142 +#: users/models.py:143 msgid "Add" msgstr "" -#: users/models.py:142 +#: users/models.py:143 msgid "Permission to add items" msgstr "" -#: users/models.py:144 +#: users/models.py:145 msgid "Change" msgstr "" -#: users/models.py:144 +#: users/models.py:145 msgid "Permissions to edit items" msgstr "" -#: users/models.py:146 +#: users/models.py:147 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 aacb4b74ec..13e4832bc5 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-03 10:02+0000\n" +"POT-Creation-Date: 2020-11-05 08:57+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -397,7 +397,7 @@ msgstr "" #: 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:293 -#: part/templates/part/part_app_base.html:7 +#: 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 #: templates/js/build.js:647 templates/js/company.js:138 @@ -480,10 +480,10 @@ msgstr "" msgid "Link to external URL" msgstr "" -#: build/models.py:181 build/templates/build/tabs.html:14 company/models.py:314 +#: build/models.py:181 build/templates/build/tabs.html:23 company/models.py:314 #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 #: order/templates/order/purchase_order_detail.html:203 -#: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:70 +#: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 #: stock/forms.py:306 stock/forms.py:338 stock/forms.py:366 stock/models.py:455 #: stock/models.py:1428 stock/templates/stock/tabs.html:26 #: templates/js/barcode.js:391 templates/js/bom.js:250 @@ -495,65 +495,65 @@ msgstr "" msgid "Extra build notes" msgstr "" -#: build/models.py:543 +#: build/models.py:551 msgid "No build output specified" msgstr "" -#: build/models.py:546 +#: build/models.py:554 msgid "Build output is already completed" msgstr "" -#: build/models.py:549 +#: build/models.py:557 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:620 +#: build/models.py:632 msgid "Completed build output" msgstr "" -#: build/models.py:858 +#: build/models.py:870 msgid "BuildItem must be unique for build, stock_item and install_into" msgstr "" -#: build/models.py:880 +#: build/models.py:892 msgid "Build item must specify a build output" msgstr "" -#: build/models.py:885 +#: build/models.py:897 #, python-brace-format msgid "Selected stock item not found in BOM for part '{p}'" msgstr "" -#: build/models.py:889 +#: build/models.py:901 #, python-brace-format msgid "Allocated quantity ({n}) must not exceed available quantity ({q})" msgstr "" -#: build/models.py:896 order/models.py:603 +#: build/models.py:908 order/models.py:603 msgid "StockItem is over-allocated" msgstr "" -#: build/models.py:900 order/models.py:606 +#: build/models.py:912 order/models.py:606 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:904 +#: build/models.py:916 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:944 +#: build/models.py:956 msgid "Build to allocate parts" msgstr "" -#: build/models.py:951 +#: build/models.py:963 msgid "Source stock item" msgstr "" -#: build/models.py:964 +#: build/models.py:976 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:972 +#: build/models.py:984 msgid "Destination stock item" msgstr "" @@ -565,47 +565,47 @@ msgstr "" msgid "Build order has been completed" msgstr "" -#: build/templates/build/allocate.html:24 +#: build/templates/build/allocate.html:25 msgid "Create new build output" msgstr "" -#: build/templates/build/allocate.html:25 +#: build/templates/build/allocate.html:26 msgid "Create New Output" msgstr "" -#: build/templates/build/allocate.html:28 +#: build/templates/build/allocate.html:29 msgid "Order required parts" msgstr "" -#: build/templates/build/allocate.html:29 +#: build/templates/build/allocate.html:30 #: company/templates/company/detail_part.html:28 order/views.py:801 #: part/templates/part/category.html:125 msgid "Order Parts" msgstr "" -#: build/templates/build/allocate.html:32 templates/js/build.js:574 +#: build/templates/build/allocate.html:33 templates/js/build.js:574 msgid "Unallocate stock" msgstr "" -#: build/templates/build/allocate.html:33 build/views.py:341 build/views.py:778 +#: build/templates/build/allocate.html:34 build/views.py:341 build/views.py:778 msgid "Unallocate Stock" msgstr "" -#: build/templates/build/allocate.html:46 +#: build/templates/build/allocate.html:48 msgid "Create a new build output" msgstr "" -#: build/templates/build/allocate.html:47 +#: build/templates/build/allocate.html:49 msgid "No incomplete build outputs remain." msgstr "" -#: build/templates/build/allocate.html:48 +#: build/templates/build/allocate.html:50 msgid "Create a new build output using the button above" msgstr "" -#: build/templates/build/attachments.html:11 build/templates/build/tabs.html:17 +#: build/templates/build/attachments.html:11 build/templates/build/tabs.html:29 #: order/templates/order/po_tabs.html:11 order/templates/order/so_tabs.html:16 -#: part/templates/part/tabs.html:67 stock/templates/stock/tabs.html:32 +#: part/templates/part/tabs.html:70 stock/templates/stock/tabs.html:32 msgid "Attachments" msgstr "" @@ -698,7 +698,7 @@ msgstr "" msgid "Sales Order" msgstr "" -#: build/templates/build/build_output.html:9 build/templates/build/tabs.html:11 +#: build/templates/build/build_output.html:9 build/templates/build/tabs.html:17 msgid "Build Outputs" msgstr "" @@ -855,8 +855,8 @@ msgstr "" msgid "Details" msgstr "" -#: build/templates/build/tabs.html:8 -msgid "Allocate Parts" +#: build/templates/build/tabs.html:10 +msgid "Incomplete" msgstr "" #: build/templates/build/unallocate.html:10 @@ -887,7 +887,7 @@ msgstr "" msgid "Create Build Output" msgstr "" -#: build/views.py:207 stock/models.py:832 stock/views.py:1645 +#: build/views.py:207 stock/models.py:832 stock/views.py:1647 msgid "Serial numbers already exist" msgstr "" @@ -992,7 +992,7 @@ msgstr "" msgid "Add Build Order Attachment" msgstr "" -#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:96 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:164 #: stock/views.py:176 msgid "Added attachment" msgstr "" @@ -1487,7 +1487,7 @@ msgid "Pricing Information" msgstr "" #: company/templates/company/supplier_part_pricing.html:17 company/views.py:410 -#: part/templates/part/sale_prices.html:13 part/views.py:2292 +#: part/templates/part/sale_prices.html:13 part/views.py:2360 msgid "Add Price Break" msgstr "" @@ -1614,15 +1614,15 @@ msgstr "" msgid "Delete Supplier Part" msgstr "" -#: company/views.py:416 part/views.py:2298 +#: company/views.py:416 part/views.py:2366 msgid "Added new price break" msgstr "" -#: company/views.py:453 part/views.py:2343 +#: company/views.py:453 part/views.py:2411 msgid "Edit Price Break" msgstr "" -#: company/views.py:469 part/views.py:2359 +#: company/views.py:469 part/views.py:2427 msgid "Delete Price Break" msgstr "" @@ -1715,7 +1715,7 @@ msgstr "" msgid "Date order was completed" msgstr "" -#: order/models.py:185 order/models.py:267 part/views.py:1409 +#: order/models.py:185 order/models.py:267 part/views.py:1477 #: stock/models.py:243 stock/models.py:816 msgid "Quantity must be greater than zero" msgstr "" @@ -2278,7 +2278,7 @@ msgstr "" msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:93 part/models.py:1582 +#: part/forms.py:93 part/models.py:1608 msgid "Parent Part" msgstr "" @@ -2302,35 +2302,39 @@ msgstr "" msgid "Select BOM file to upload" msgstr "" -#: part/forms.py:159 -msgid "Select part category" +#: part/forms.py:154 +msgid "Related Part" msgstr "" #: part/forms.py:173 +msgid "Select part category" +msgstr "" + +#: part/forms.py:187 msgid "Duplicate all BOM data for this part" msgstr "" -#: part/forms.py:174 +#: part/forms.py:188 msgid "Copy BOM" msgstr "" -#: part/forms.py:179 +#: part/forms.py:193 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:180 +#: part/forms.py:194 msgid "Copy Parameters" msgstr "" -#: part/forms.py:185 +#: part/forms.py:199 msgid "Confirm part creation" msgstr "" -#: part/forms.py:279 +#: part/forms.py:293 msgid "Input quantity for price calculation" msgstr "" -#: part/forms.py:282 +#: part/forms.py:296 msgid "Select currency for price calculation" msgstr "" @@ -2456,116 +2460,126 @@ msgstr "" msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1455 +#: part/models.py:1481 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:1472 +#: part/models.py:1498 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:1491 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1517 templates/js/part.js:567 templates/js/stock.js:92 msgid "Test Name" msgstr "" -#: part/models.py:1492 +#: part/models.py:1518 msgid "Enter a name for the test" msgstr "" -#: part/models.py:1497 +#: part/models.py:1523 msgid "Test Description" msgstr "" -#: part/models.py:1498 +#: part/models.py:1524 msgid "Enter description for this test" msgstr "" -#: part/models.py:1503 templates/js/part.js:576 +#: part/models.py:1529 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "" -#: part/models.py:1504 +#: part/models.py:1530 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1509 templates/js/part.js:584 +#: part/models.py:1535 templates/js/part.js:584 msgid "Requires Value" msgstr "" -#: part/models.py:1510 +#: part/models.py:1536 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1515 templates/js/part.js:591 +#: part/models.py:1541 templates/js/part.js:591 msgid "Requires Attachment" msgstr "" -#: part/models.py:1516 +#: part/models.py:1542 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1549 +#: part/models.py:1575 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:1554 +#: part/models.py:1580 msgid "Parameter Name" msgstr "" -#: part/models.py:1556 +#: part/models.py:1582 msgid "Parameter Units" msgstr "" -#: part/models.py:1584 +#: part/models.py:1610 msgid "Parameter Template" msgstr "" -#: part/models.py:1586 +#: part/models.py:1612 msgid "Parameter Value" msgstr "" -#: part/models.py:1623 +#: part/models.py:1649 msgid "Select parent part" msgstr "" -#: part/models.py:1631 +#: part/models.py:1657 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:1637 +#: part/models.py:1663 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:1639 +#: part/models.py:1665 msgid "This BOM item is optional" msgstr "" -#: part/models.py:1642 +#: part/models.py:1668 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:1645 +#: part/models.py:1671 msgid "BOM item reference" msgstr "" -#: part/models.py:1648 +#: part/models.py:1674 msgid "BOM item notes" msgstr "" -#: part/models.py:1650 +#: part/models.py:1676 msgid "BOM line checksum" msgstr "" -#: part/models.py:1717 part/views.py:1415 part/views.py:1467 +#: part/models.py:1743 part/views.py:1483 part/views.py:1535 #: stock/models.py:233 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:1733 +#: part/models.py:1759 msgid "BOM Item" msgstr "" +#: part/models.py:1874 +msgid "Select Related Part" +msgstr "" + +#: part/models.py:1906 +msgid "" +"Error creating relationship: check that the part is not related to itself " +"and that the relationship is unique" +msgstr "" + #: part/templates/part/allocation.html:10 msgid "Part Stock Allocations" msgstr "" @@ -2648,7 +2662,7 @@ msgstr "" msgid "Validate" msgstr "" -#: part/templates/part/bom.html:62 part/views.py:1706 +#: part/templates/part/bom.html:62 part/views.py:1774 msgid "Export Bill of Materials" msgstr "" @@ -2744,7 +2758,7 @@ msgstr "" msgid "All parts" msgstr "" -#: part/templates/part/category.html:24 part/views.py:2109 +#: part/templates/part/category.html:24 part/views.py:2177 msgid "Create new part category" msgstr "" @@ -3007,8 +3021,8 @@ msgstr "" msgid "Value" msgstr "" -#: part/templates/part/params.html:41 part/templates/part/supplier.html:19 -#: users/models.py:146 +#: part/templates/part/params.html:41 part/templates/part/related.html:41 +#: part/templates/part/supplier.html:19 users/models.py:147 msgid "Delete" msgstr "" @@ -3115,6 +3129,14 @@ msgstr "" msgid "Upload new image" msgstr "" +#: part/templates/part/related.html:9 +msgid "Related Parts" +msgstr "" + +#: part/templates/part/related.html:15 +msgid "Add Related" +msgstr "" + #: part/templates/part/sale_prices.html:9 part/templates/part/tabs.html:53 msgid "Sale Price" msgstr "" @@ -3184,6 +3206,10 @@ msgstr "" msgid "Tests" msgstr "" +#: part/templates/part/tabs.html:67 +msgid "Related" +msgstr "" + #: part/templates/part/track.html:8 msgid "Part Tracking" msgstr "" @@ -3205,199 +3231,207 @@ msgid "New Variant" msgstr "" #: part/views.py:80 +msgid "Add Related Part" +msgstr "" + +#: part/views.py:136 +msgid "Delete Related Part" +msgstr "" + +#: part/views.py:148 msgid "Add part attachment" msgstr "" -#: part/views.py:135 templates/attachment_table.html:34 +#: part/views.py:203 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "" -#: part/views.py:141 +#: part/views.py:209 msgid "Part attachment updated" msgstr "" -#: part/views.py:156 +#: part/views.py:224 msgid "Delete Part Attachment" msgstr "" -#: part/views.py:164 +#: part/views.py:232 msgid "Deleted part attachment" msgstr "" -#: part/views.py:173 +#: part/views.py:241 msgid "Create Test Template" msgstr "" -#: part/views.py:202 +#: part/views.py:270 msgid "Edit Test Template" msgstr "" -#: part/views.py:218 +#: part/views.py:286 msgid "Delete Test Template" msgstr "" -#: part/views.py:227 +#: part/views.py:295 msgid "Set Part Category" msgstr "" -#: part/views.py:277 +#: part/views.py:345 #, python-brace-format msgid "Set category for {n} parts" msgstr "" -#: part/views.py:312 +#: part/views.py:380 msgid "Create Variant" msgstr "" -#: part/views.py:394 +#: part/views.py:462 msgid "Duplicate Part" msgstr "" -#: part/views.py:401 +#: part/views.py:469 msgid "Copied part" msgstr "" -#: part/views.py:455 part/views.py:585 +#: part/views.py:523 part/views.py:653 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:520 templates/js/stock.js:840 +#: part/views.py:588 templates/js/stock.js:840 msgid "Create New Part" msgstr "" -#: part/views.py:527 +#: part/views.py:595 msgid "Created new part" msgstr "" -#: part/views.py:743 +#: part/views.py:811 msgid "Part QR Code" msgstr "" -#: part/views.py:762 +#: part/views.py:830 msgid "Upload Part Image" msgstr "" -#: part/views.py:770 part/views.py:807 +#: part/views.py:838 part/views.py:875 msgid "Updated part image" msgstr "" -#: part/views.py:779 +#: part/views.py:847 msgid "Select Part Image" msgstr "" -#: part/views.py:810 +#: part/views.py:878 msgid "Part image not found" msgstr "" -#: part/views.py:821 +#: part/views.py:889 msgid "Edit Part Properties" msgstr "" -#: part/views.py:848 +#: part/views.py:916 msgid "Duplicate BOM" msgstr "" -#: part/views.py:879 +#: part/views.py:947 msgid "Confirm duplication of BOM from parent" msgstr "" -#: part/views.py:900 +#: part/views.py:968 msgid "Validate BOM" msgstr "" -#: part/views.py:923 +#: part/views.py:991 msgid "Confirm that the BOM is valid" msgstr "" -#: part/views.py:934 +#: part/views.py:1002 msgid "Validated Bill of Materials" msgstr "" -#: part/views.py:1068 +#: part/views.py:1136 msgid "No BOM file provided" msgstr "" -#: part/views.py:1418 +#: part/views.py:1486 msgid "Enter a valid quantity" msgstr "" -#: part/views.py:1443 part/views.py:1446 +#: part/views.py:1511 part/views.py:1514 msgid "Select valid part" msgstr "" -#: part/views.py:1452 +#: part/views.py:1520 msgid "Duplicate part selected" msgstr "" -#: part/views.py:1490 +#: part/views.py:1558 msgid "Select a part" msgstr "" -#: part/views.py:1496 +#: part/views.py:1564 msgid "Selected part creates a circular BOM" msgstr "" -#: part/views.py:1500 +#: part/views.py:1568 msgid "Specify quantity" msgstr "" -#: part/views.py:1756 +#: part/views.py:1824 msgid "Confirm Part Deletion" msgstr "" -#: part/views.py:1765 +#: part/views.py:1833 msgid "Part was deleted" msgstr "" -#: part/views.py:1774 +#: part/views.py:1842 msgid "Part Pricing" msgstr "" -#: part/views.py:1900 +#: part/views.py:1968 msgid "Create Part Parameter Template" msgstr "" -#: part/views.py:1910 +#: part/views.py:1978 msgid "Edit Part Parameter Template" msgstr "" -#: part/views.py:1919 +#: part/views.py:1987 msgid "Delete Part Parameter Template" msgstr "" -#: part/views.py:1929 +#: part/views.py:1997 msgid "Create Part Parameter" msgstr "" -#: part/views.py:1981 +#: part/views.py:2049 msgid "Edit Part Parameter" msgstr "" -#: part/views.py:1997 +#: part/views.py:2065 msgid "Delete Part Parameter" msgstr "" -#: part/views.py:2056 +#: part/views.py:2124 msgid "Edit Part Category" msgstr "" -#: part/views.py:2093 +#: part/views.py:2161 msgid "Delete Part Category" msgstr "" -#: part/views.py:2101 +#: part/views.py:2169 msgid "Part category was deleted" msgstr "" -#: part/views.py:2164 +#: part/views.py:2232 msgid "Create BOM Item" msgstr "" -#: part/views.py:2232 +#: part/views.py:2300 msgid "Edit BOM item" msgstr "" -#: part/views.py:2282 +#: part/views.py:2350 msgid "Confim BOM item deletion" msgstr "" @@ -4198,48 +4232,48 @@ msgstr "" msgid "Create new Stock Item" msgstr "" -#: stock/views.py:1553 +#: stock/views.py:1555 msgid "Duplicate Stock Item" msgstr "" -#: stock/views.py:1619 +#: stock/views.py:1621 msgid "Invalid quantity" msgstr "" -#: stock/views.py:1622 +#: stock/views.py:1624 msgid "Quantity cannot be less than zero" msgstr "" -#: stock/views.py:1626 +#: stock/views.py:1628 msgid "Invalid part selection" msgstr "" -#: stock/views.py:1674 +#: stock/views.py:1676 #, python-brace-format msgid "Created {n} new stock items" msgstr "" -#: stock/views.py:1693 stock/views.py:1709 +#: stock/views.py:1695 stock/views.py:1711 msgid "Created new stock item" msgstr "" -#: stock/views.py:1728 +#: stock/views.py:1730 msgid "Delete Stock Location" msgstr "" -#: stock/views.py:1742 +#: stock/views.py:1744 msgid "Delete Stock Item" msgstr "" -#: stock/views.py:1754 +#: stock/views.py:1756 msgid "Delete Stock Tracking Entry" msgstr "" -#: stock/views.py:1773 +#: stock/views.py:1775 msgid "Edit Stock Tracking Entry" msgstr "" -#: stock/views.py:1783 +#: stock/views.py:1785 msgid "Add Stock Tracking Entry" msgstr "" @@ -5102,58 +5136,62 @@ msgstr "" msgid "Delete Stock" msgstr "" -#: users/admin.py:61 +#: users/admin.py:62 msgid "Users" msgstr "" -#: users/admin.py:62 +#: users/admin.py:63 msgid "Select which users are assigned to this group" msgstr "" #: users/admin.py:120 +msgid "The following users are members of multiple groups:" +msgstr "" + +#: users/admin.py:143 msgid "Personal info" msgstr "" -#: users/admin.py:121 +#: users/admin.py:144 msgid "Permissions" msgstr "" -#: users/admin.py:124 +#: users/admin.py:147 msgid "Important dates" msgstr "" -#: users/models.py:129 +#: users/models.py:130 msgid "Permission set" msgstr "" -#: users/models.py:137 +#: users/models.py:138 msgid "Group" msgstr "" -#: users/models.py:140 +#: users/models.py:141 msgid "View" msgstr "" -#: users/models.py:140 +#: users/models.py:141 msgid "Permission to view items" msgstr "" -#: users/models.py:142 +#: users/models.py:143 msgid "Add" msgstr "" -#: users/models.py:142 +#: users/models.py:143 msgid "Permission to add items" msgstr "" -#: users/models.py:144 +#: users/models.py:145 msgid "Change" msgstr "" -#: users/models.py:144 +#: users/models.py:145 msgid "Permissions to edit items" msgstr "" -#: users/models.py:146 +#: users/models.py:147 msgid "Permission to delete items" msgstr ""